Skip to content

yoedtos/cargotracker

 
 

Repository files navigation

Eclipse Cargo Tracker - Applied Domain-Driven Design Blueprints for Jakarta EE

compile and build Integration Test with Arquillian Payara Managed Container Integration Test with Arquillian WildFly Managed Container

CircleCI Quality Gate Status Coverage

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.

Building

Prerequisites

  • Java 11
  • Apache Maven 3.8.1
  • Git
  • Docker
  • A Jakarta EE 8 compatible application server

Startup PostgresSQL Database

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

Payara 5

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

WildFly

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

Testing

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.

Payara 5

Run the following command to run Arquillian tests against Payara Managed Adaper.

mvn clean verify -Parq-payara-managed -DskipTests=false

WildFly

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.

Releases

No releases published

Packages

No packages published

Languages

  • Java 85.4%
  • HTML 14.3%
  • CSS 0.3%