This is a personal fork of Eclipse EE4J CargoTracker, I'm also a contributor of the CargoTracker project.
For the detailed introduction to the CargoTracker project, go to the upstream project website: https://eclipse-ee4j.github.io/cargotracker/.
There are some highlights when comparing to the upstream project.
- Utilize Docker to run a Postgres Database in both development and production to erase the risk brought by different enviroments.
- Add support to run application on WildFly.
- Add several fine-grained Maven profilles for varied Arquillian Container adapters, which is derived from Jakarta EE 8 template project.
- Replace Primefaces with simple Bootstrap css style and plain Facelets templates, clean up and reorginize all Facelets templates.
- Add a plenty of testing codes to cover more use cases.
- Add Github Actions workflows to build the project and run testing codes, and generate code quality report via Jacoco, SonarCloud.
- Java 11
- Apache Maven 3.8.1
- Git
- Docker
- A Jakarta EE 8 compatible application server
There is a docker-compose.yaml file available in the project root folder.
In your terminal, switch to the project root folder, and run the following command to start a Postgres instance in Docker container.
docker-compose up postgres
Run the following command to run the application on Payara 5 using cargo maven plugin.
mvn clean package cargo:run
Open your browser, go to http://localhost:8080/cargo-tracker
Run the following command to run the application on WildFly using the official WildFly maven plugin.
mvn clean package wildfly:run -Pwildfly
Open your browser, go to http://localhost:8080/cargo-tracker
Cargo Tracker's testing is done using JUnit and Arquillian. There are several Maven profiles configured for running the testing codes against varied Arquillian Container adapters.
Run the following command to run Arquillian tests against Payara Managed Adaper.
mvn clean verify -Parq-payara-managed -DskipTests=false
Run the following command to run Arquillian tests against WildFly Managed Adaper.
mvn clean verify -Parq-wildfly-managed -DskipTests=false
I have removed other profiles in the latest commits, if you are interested in other Arquillian Adapters, go to Jakarta EE 8 template project, and follow the guides and expereince yourself.