Skip to content

jakub-zarembinski/spam-protection-team

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spam Protection Team

This project is a response to the Full-Stack Challenge. The solution applies the RESTful architectural style. The back-end is written in Java and it relies on the JAX-RS API implemented by Eclipse Jersey. The front-end is written in JavaScript and offers two alternative versions:

The React-based variant offers a significantly better UX (as it eliminates the symptoms of page reloading whenever an update is needed) but it creates a problem of Cross-Origin Resource Sharing, as the React client needs to be hosted on its own NodeJS server. The CORS issue is solved on the back-end by utilizing a customized Container Response Filter.

Building from source

All dependencies are listed in the POM file.

Target server

The solution has been tested on Apache TomEE application server (the Plus edition). It's a good fit due to its built-in support for JAX-RS.

Deployment

The easiest option is deployment from the pre-compiled WAR binaries:

Running with the React client

First, make sure the TomEE server is running and the WAR file is successfully deployed (as described above). Then follow these steps:

  • git clone git@github.com:jakub-zarembinski/spam-protection-team.git
  • cd spam-protection-team/ReactClient
  • npm install
  • npm start
  • Navigate to http://localhost:3000/

Unit testing

A basic unit test for the back-end is available in the Tester.java file. This test assumes that another instance of the application is already deployed and running on the server.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published