Tomcat Configuration

$CATALINA_HOME/conf

$CATALINA_HOME/common

Classes and libraries shared by the Tomcat server and all the webapps.  We added common/classes/log4j.properties and common/lib/log4j.jar in order to get Tomcat to do log4j. By default it just uses commons logging. The logging by the oscars.war and oscars.aar pick up defaults from this file, e.g the root.catagory log.

$CATALINA_HOME/shared

Contains classes and libraries shared by all the webapps but not the Tomcat server. This has been where we have put files that can't seem to be found from the axis2.war or the OSCARS.aar. Currently the contents are:

$CATALINA_HOME/webapps

Contains all the user provided war files. In our case this is OSCARS.war and axis2.war. When a war file is put in this directory it will be automatically deployed by the Tomcat server and its contents will be extracted into a directory with the name of the war.
Every tomcat webapp has a WEB-INF/web.xml that defines the service name and methods.

$CATALINA_HOME/bin - startup scripts

Axis2 Configuration

OSCARS Configuration

Server

Server acting as client

When the server forwards a request to another domain, it acts as a OSCARS/axis2 client and thus needs to include te client-side configuration files. These files are put into $CATALINA_HOME/shared/oscars.conf/axis2.repo.

The location of the axis2.xml file and the repository in which the modules are found are set in Forwarder.setup. Forwarder.setup calls KeyMangement.setKeyStore which sets the ssl keystore to the file "ssl-keystore.jks" in the repository directory.

axis2.xml defines the names of the signatureProperty file and the keystore.

The files sec-client.properties, sec-client.jks and ssl-keystore.jks are also copied to $CATALINA_HOME/shared/classes/repo so that they will be on the server's classpath.

Client

See Security Reference for more details about these files.