Skip to content

Running

Philip Helger edited this page Oct 13, 2015 · 27 revisions

#General requirements According to the PEPPOL specification an SMP MUST run in the root of a domain (like http://smp.example.org) and must use port 80. Additionally the use of https is not allowed.

#Setting up Apache Tomcat Tomcat must be set up with the following java system property: org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH = true

This can be done by adding: -Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH="true" as a JVM argument (Tomcat Properties -> Java -> Java Options) or put it into the catalina.sh in Linux:

CATALINA_OPTS="$CATALINA_OPTS -Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true"

or catalina.bat on Windows:

set CATALINA_OPTS=%CATALINA_OPTS% -Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true

#Running the SMP After starting up the SMP and navigating to the respective address in your browser (e.g. localhost:8080/smp) you will see an overview of all service groups managed on this server.

#Production configuration You may use the default WAR file for your SMP server if you specify the absolute paths to webapp.properties and smp-server.properties via the respective system properties smp.webapp.properties.path and smp.server.properties.path when you start your application server. See Configuration for the content of the configuration files.

Example system parameters where both files are in directory /var/smpserver/:

-Dsmp.webapp.properties.path=/var/smpserver/webapp.properties
-Dsmp.server.properties.path=/var/smpserver/smp-server.properties

Please note that in case of external properties files all data paths in the configuration files must also be specified absolute.

#Running behind an httpd It is possible to run the SMP on an Tomcat (or the like) that is proxied via an httpd (e.g. per mod_jk or mod_proxy) to the public. In this case and the SMP runs on Tomcat in a context different than ROOT, it is important to

  • set the smp.forceroot configuration property to true (see Configuration for details) and
  • to change the path of the SMP session cookie (usually JSESSIONID) from the original path to the destination path as well

Assuming you want to proxy the SMP from a local Tomcat (with active AJP connector on port 8009) running in context path /smp to the domain test-smp.example.org you might consider adding something (similar to) the following to your httpd VirtualHost configuration:

   ServerName  test-smp.example.org:80

   # Remove an optional 'Secure' flag from the cookie named JSESSIONID
   Header edit "Set-Cookie: JSESSIONID=" Secure " "

   ProxyPass         /  ajp://127.0.0.1:8009/smp/
   ProxyPassReverse  /  ajp://127.0.0.1:8009/smp/
   ProxyPassReverse  /  http://test-smp.example.org/smp/
   
   # Change the path of the cookies as well (from "/smp" to "/")
   ProxyPassReverseCookiePath /smp/ /

Default login

To login to the management area use the username [email protected] and the password password for the initial login. Afterwards modify this in the user management!