Installing ControlTier Server on Tomcat 4.0.x
Scope
This document describes how to setup Tomcat 4.0.x, to be used as a ControlTier server, using a WebDAV repository, a Mysql model datastore, and LDAP for authentication and authorization.
These instructions have been tested with Tomcat 4.0.6.
Unpack ControlTier Server Webapp
The name of the ControlTier Server webapp is "itnav". Create directory $CATALINA_BASE/webapps/itnav. Change directory to $CATALINA_BASE/webapps/itnav. Unzip the Workbench WAR (Webapp ARchive) distribution.
mkidr $CATALINA_BASE/webapps/itnav cd $CATALINA_BASE/webapps/itnav cp /path/to/the/downloaded/itnav.war ./ unzp itnav.war
Configure Workbench RDB Settings
Workbench database configuration information is maintained in a file called bootstrap.properties: $CATALINA_BASE/webapps/itnav/WEB-INF/classes/bootstrap.properties
Change the following three settings to the values used in the MySQL database setup.
ngps.workbench.backend.rdb.user = ctier ngps.workbench.backend.rdb.pass = <ctierPassword> ngps.workbench.backend.rdb.url = jdbc:mysql://localhost:3306/WorkbenchDB
Update Tomcat Libraries
rm $CATALINA_HOME/common/lib/xerces.jar
Configure Tomcat Realm
For Workbench to use LDAP for authentication and authorization, add the following fragment to the $CATALINA_BASE/conf/server.xml:
<Realm className="org.apache.catalina.realm.JNDIRealm" debug="99"
connectionName="cn=Manager,dc=networkgps,dc=com"
connectionPassword="secret"
connectionURL="ldap://localhost:3890/"
roleBase="dc=roles,dc=networkgps,dc=com"
roleName="cn"
roleSearch="(uniqueMember={0})"
roleSubtree="false"
userPassword="userPassword"
userPattern="cn={0},dc=networkgps,dc=com"/>
If the LDAP server is located on a different machine than where Workbench is hosted, change the hostname in the 'connectionURL' attribute accordingly.
Configure Tomcat HTTP Port
By default, Tomcat runs on port 8080. To change this configuration setting locate the 'Connector' tag and change the port attribute:
<Connector className="org.apache.catalina.connector.http.HttpConnector"
port="8080" address="0.0.0.0" minProcessors="5" maxProcessors="75"
enableLookups="true" redirectPort="8443"
acceptCount="10" debug="0" connectionTimeout="60000"/>
Configure Tomcat's WebDAV webapp
By default, the webdav servlet is configured as read-only. Set the readonly parameter from true to false:
<servlet>
<servlet-name>webdav</servlet-name>
<servlet-class>org.apache.catalina.servlets.WebdavServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
<!-- Uncomment this to enable read and write access -->
<init-param>
<param-name>readonly</param-name>
<param-value>false</param-value>
</init-param>
<!--load-on-startup>1</load-on-startup-->
</servlet>
Configure webdav BASIC authentication and the ControlTier user, admin, and architect roles:
<security-constraint>
<web-resource-collection>
<web-resource-name>Administrative</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>user</role-name>
<role-name>admin</role-name>
<role-name>architect</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>JNDIRealm</realm-name>
</login-config>
Start Tomcat
Tomcat should now be ready to run Workbench. To start using Workbench, first start (or restart) the Tomcat server with Tomcat's bin/startup.(sh|bat) scripts, and point your browser to http://localhost:8080/itnav.
$CATALINA_HOME/bin/startup.sh

