- Download or Build the WAR file
- Deploying the web app
- Storing the conversion state externally
Before getting started you need the WAR file which you can either download or build yourself.
This WAR file is required for the JPedal service to work.
For trial users:
- If you haven’t already, sign up for JPedal trial.
- Open the email you receive when you signed up.
- Follow the download link found in the Docker section.
- Visit the Customer download page.
- Click on ‘Download Latest Customer WAR’.
- Submit your username and password.
Build a copy of our JPedal Microservice Example project.
Instructions can be found on the GitHub page.
- Download and install the latest version of Jetty 10 (Please note Jetty 11 and above is not supported due to their move to using Jakarta).
- Create a new environment variable called JETTY_HOME for the Jetty home directory.
- Create a directory to hold the jetty base content and enter that directory.
- Set up the required modules using the following command.
java -jar JETTY_HOME/start.jar --add-module=server,http,deploy,jsp
- Move the war file into the
webappsfolder created in your jetty base directory.
The name of the war file will be the base of your web app. For example, if the webserver is hosted at
jpedal-microservice.warwill be deployed at
- Start the Jetty server and navigate to the admin console in your browser.
java -jar start.jarwill start the server on
You can check if the web app has successfully deployed by navigating to its URL in your browser - you should see a blank white page with
JPedal Microservice Example written in the centre.
You can interact with the JPedal Microservice Example using the REST API (See the GitHub page for details).
For specific languages, see our tutorials.
In some cases you may want to store the state of the program externally in a database, for example you may want to preserve the program’s state in the event of a server failure.
In order to do this, you must create a datasource on Jetty and add it’s JNDI name to the microservice config.
First we need to install the database driver jar into
$JETTY_HOME/lib/ext so it can be used as a datasource.
To load the driver and make it available to our servlet, we will have to start the jetty server with the modules: ext and plus.
- plus is needed as it contains the logic for JNDI to work (the feature that allows the microservice to find the datasource)
- ext loads all the jars in
$JETTY_HOME/lib/extonto the classpath, thus enables jetty to find the database driver.
These can be enabled by adding
as a command line argument when running Jetty
$JETTY_HOME/etc/jetty.xml, go to the bottom of the file (still within the Configure tag), and add:
<New id="ID" class="org.eclipse.jetty.plus.jndi.Resource"> <Arg><Ref refid="wac"/></Arg> <Arg>JNDI_NAME</Arg> <Arg> <New class="DATASOURCE_CLASS"> <Set name="url">JDBC_URL</Set> </New> </Arg> </New>
JNDI_NAMEis the JNDI Name to put in config, this typically starts with
jdbc/, for example:
JDBC_URLis the URL used to access the database. You should be able to find what this needs to look like in your database driver jar’s documentation, for SQLite, this would be
DATASOURCE_CLASSis the fully qualified class name of the driver’s Datasource class in the database driver jar, you should also be able to find this in your database driver jar’s documentation, for SQLite, this would be
<New class="DATASOURCE_CLASS">element can also contain extra
<Set>elements used to configure the driver, these can contain parameters such as the username and password. These are driver dependant, so you’ll find what options you have in your database driver’s documentation.
Still need help? Send us your questions.