Example for conferences
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
conf
conference-mp Updated to version 1.0.0 Feb 16, 2019
conference-se
.gitignore Security, Metrics and Tracing added. Oct 17, 2018
Conference-script.md
LICENSE
README.md
pom.xml Updated to version 1.0.0 Feb 16, 2019

README.md

helidon-conference

Example for conferences

The MP and SE project were generated using helidon quickstart and then modified to live in a single pom project (e.g. dependency management and plugin management is unified in parent project).

conference-se

mvn archetype:generate -DinteractiveMode=false \
    -DarchetypeGroupId=io.helidon.archetypes \
    -DarchetypeArtifactId=helidon-quickstart-se \
    -DarchetypeVersion=1.0.0 \
    -DgroupId=io.helidon.examples \
    -DartifactId=conference-se \
    -Dpackage=io.helidon.examples.conference.se

conference-mp

mvn archetype:generate -DinteractiveMode=false \
    -DarchetypeGroupId=io.helidon.archetypes \
    -DarchetypeArtifactId=helidon-quickstart-mp \
    -DarchetypeVersion=1.0.0 \
    -DgroupId=io.helidon.examples \
    -DartifactId=conference-mp \
    -Dpackage=io.helidon.examples.conference.mp

Startup

To start SE application, just use java -jar, or run it from IDE. To start MP application, you need to provide the following system properties to correctly decrypt password from config:

-Dsecurity.config.aes.insecure-passphrase=myVerySecureMasterPasswordForConference 
-Dsecurity.config.require-encryption=false

Endpoints

Each application opens a few endpoints that return JSON messages.

conference-se

conference-mp

Tracing

To see traces of the calls, I use Zipkin tracer. To replicate the same behavior, simply start zipkin docker image:

docker start zipkin

This command will start "Zipkin" on default host and port. If you have Zipkin running on a different location than http://localhost:9411, you need to re-configure the application:

application.yaml:

# Listing default values 
tracing:
    service: "service-name" # Existing configuration
    protocol: "http"
    host: "localhost"
    port: 9411
    api-version: "2"
    enabled: true