Title: Application containers Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at . http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. The default distribution of Apache Rave contains Apache Tomcat 6 as application server. For local development the [Cargo Maven 2 plugin][1] is configured to use Tomcat 6. Apache Rave should work with other application containers as well, but sometimes extra configuration is necessary. If your application container isn't mentioned on this page, it only means we have not tested it yet. ## Custom Apache Tomcat 6 installation To install Apache Rave inside an existing Tomcat 6 instance, make the following changes: ### Increase memory Create `bin/setenv.sh` with the following contents: #!/bin/sh export JAVA_OPTS="$JAVA_OPTS -Xmx512m -XX:MaxPermSize=256m" ### Add more sources for the classpath Modify conf/catalina.properties common.loader=${catalina.base}/common/classes,${catalina.base}/common/lib/*.jar,${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar shared.loader=${catalina.base}/shared/classes,${catalina.base}/shared/lib/*.jar ### Delete default contexts In the webapp folder delete existing `ROOT` and `docs` folders. The OpenSocial container (Shindig) needs the `ROOT` context. ### Copy artifacts Copy the `shared/lib` folder plus the contents of the `webapp` folder to your Tomcat installation. ## Apache Tomcat 7 See the instructions for Tomcat 6. ## Jetty 6 ### Welcome page redirect Apache Rave works with Jetty 7, but extra configuration is needed to redirect the user from `http://localhost:8080` to the login page on `http://localhost:8080/portal/login`. By default Jetty [uses the `JspServlet`][2] for the welcome page, Apache Rave uses `org.springframework.web.servlet.DispatcherServlet` from the Spring Framework. In order to let Jetty use the DispatcherServlet: * Modify the `webdefault.xml` * Go to entry for the servlet org.eclipse.jetty.servlet.DefaultServlet * Change the value of the init parameter `welcomeServlets` to `true`. ### Root context for Apache Shindig The OpenSocial container (Apache Shindig) runs under the root context. In Jetty 6 extra configuration is needed for the root context. Add a `root.xml` to the contexts folder which will have a simple context defined for Shindig with the following entries: / /webapps/root ## Jetty 7 The [Welcome page redirect](#jetty-welcome-page) configuration is also needed for Jetty 7. Jetty 7 does not need the extra configuration for the root context. [1]:http://docs.codehaus.org/display/JETTY/Welcome+files+not+working [2]:http://cargo.codehaus.org/Maven2+plugin