Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
outlinh1. true
outlinh1. true
1printablefalse
2stylh1. none
3indent20px

WORK IN PROGRESSh1. > this document is not yet linked in the Index of the wiki

Currently JobScheduler shipped with a proprietary built-in web server. Using the JobScheduler plugin feature it is possible to configure JobScheduler for working with Jetty. This document describes what you have to do, to run JobScheduler with an underlaying Jetty web server.

...

Now we have a "full" installer and an update installer with jetty. It is only a test version with the snapshot JobScheduler 1.3.12.2020-SNAPSHOT.
The update installer expects an existing installation.

...

You can change these ports in the ./config/jetty.xml.

<span idih1. "classpath">

Configure factory.ini (Put the necessary libraries in the classpath)

To run JobScheduler with Jetty instead the built-in web-server you have to use the Jetty plugin. It is a part of the library com.sos.scheduler.engine.plugins.jetty-xxx.jar. Beside the com.sos.scheduler.engine.plugins.jetty-xxx.jar it is necessary to put the dependend libraries for the jetty plugin into the classpath of the JobScheduler. The best place is to installer put them into the ./lib folder. If you use another folder, you have to /jetty_ext folder and add it to your classpath (see factory.ini).the classpath in the ./config/factory.ini.
Unix

Code Block

 ...
 [java]
 class_path = $\{SCHEDULER_HOME\}/lib/*.jar:$\{SCHEDULER_HOME\}/lib/hibernate/*.jar:<span style="color:red">$\{SCHEDULER_HOME\}/lib/jetty_ext/*.jar</span>
 ...

Windows

Code Block

 ...
 [java]
 class_path = $\{SCHEDULER_HOME\}/lib/*.jar;$\{SCHEDULER_HOME\}/lib/hibernate/*.jar;<span style="color:red">$\{SCHEDULER_HOME\}/lib/jetty_ext/*.jar</span>
 ...

</span>

<span ih1. id"scheduler">

Configure scheduler.xml

...

Please note that it is necessary to specify an empty plugin.config element.
</span>

<span idih1. "jetty">

Configure jetty.xml

To run JobScheduler with jetty it is also necessary to create two configuration files for the Jetty web server (./config/jetty.xml and ./config/web.xml). It has to place in the root of your live folder (not in the config folder). The minimal declaration defines a connector for the port to communicate with JobScheduler via http:

...

It is important to know that this port (here 44440) is a substitute for the port attribute in the config element of scheduler.xml.

At the moment both ports are required.

With a second connector it is possible to define a communication channel via https (ssl):

...

The SSL connection expects the jetty keystore file jetty.jks in the subfolder ssl (under the JobScheduler data folder). With the configuration above you can connect JobScheduler via https at port 8443.
</span>

<span ih1. id"keystore">

keystore

To generate a keystore file use keytool:

...

whereas hostname should be the JobScheduler host.
Use also your own values for OU, Oh1. _, _O and _h1. _ and _L.
</span>

<span id="web">

Configure web.xml

To run JobScheduler with jetty it is also necessary to create two configuration files for the Jetty web server (jetty.xml and web.xml). It has to place in the root of your live folder (not in the config folder).

...