01 Tomcat

Since uPortal requires Servlet 2.4 and JDK5, Tomcat 5.5 is the preferred choice for running uPortal. This is the servlet container included with the uPortal quickstart and is probably the most common of the containers listed here.

The build.xml has support for deploying to your Tomcat 5.5 or 6.0 installation. All you need to do is set the server.home property in build.properties to point to your tomcat installation. Then you can run "ant deploy-war" to deploy to tomcat. You will need to restart tomcat at least the first time. Reloading the context after that will work.

Tomcat 6.0 Notes

Shared Libraries

uPortal places libraries in CATALINA_BASE/shared/lib The default Tomcat 6.0 download does not enable libraries to be loaded from this directory. To resolve this you must edit CATALINA_BASE/conf/catalina.properties and change the line "shared.loader=" to "shared.loader=${catalina.base}/shared/classes,${catalina.base}/shared/lib/*.jar" . Don't forget to restart tomcat after applying this change.

Shared Sessions

Many popular Java Portlets - including several provided by JA-SIG - rely on the ability to share user session data between the portal web application and portlet applications. The JSR-168 specification establishes that this capability shall be provided, but it won't work in Tomcat unless you add the following line to CATALINA_BASE/conf/server.xml:

<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Documentation at :
Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
Java AJP Connector: /docs/config/ajp.html
APR (HTTP/AJP) Connector: /docs/apr.html
Define a non-SSL HTTP/1.1 Connector on port 8080
-->
<Connector port="8080" protocol="HTTP/1.1"
emptySessionPath="true"
connectionTimeout="20000"
redirectPort="8443" />

Example Installations

CalPoly successfully deployed Tomcat 6 with Java 6 with APR, TC-Native, jsvc, jmx.  See the installation and configuration pages from our wiki.Â