I'll provide more information about the changes later but because I don't have time left for today or tomorrow
I want to give the most important fact already now: JBoss (3.2.7) support.
Everything works fine under JBoss, except for isUserInRole(rolename). After a short investigation I can say that
our current JAAS security layer will not work out of the box with JBoss (and probably neither on several other
JAAS supporting application servers). I will come back on this later. Login etc does work correctly though.
Here are the instructions for getting this branch working on JBoss 3.2.7 (I also tested 4.0.1 shortly and it seems
to work but I can't give it a 100% yet):
build jetspeed-2 for Tomcat (5 or 5.5) with:
maven allClean allBuild quickStart
copy the contents of $TOMCAT_HOME/webapps/jetspeed into $JBOSS/server/default/deploy/jetspeed.war.
remove all commons-logging-<version>.jar and log4j-<version>.jar from both jetspeed.war/lib as well as from
all the war files inside jetspeed.war/WEB-INF/deploy:
(jpetstore.war, jsf-demo.war, demo.war, pam.war, perl.war, php.war, security.war and struts-demo.war)
These jars will give classloader problems otherwise because JBoss provides them already through a shared classloader.
copy the contents of $TOMCAT/shared/lib into $JBOSS/server/default/lib (presuming $TOMCAT/shared/lib was empty before building).
- element DefaultContext attribute crossContext="true" (which is the default)
- <atttribute name="Java2ClassLoadingCompliance">false</attribute>
- <attribute name="UseJBossWebLoader">false</attribute>
- comment out entry "ApplicationServerManager" from bean with id "PortalServices"
- comment out bean with id "org.apache.jetspeed.tools.pamanager.servletcontainer.ApplicationServerManager"
copy jetspeed-ds.xml (or an adapted version like jetspeed-mysql-ds.xml) from the jetspeed-2 src folder portal/src/resource into $JBOSS/server/default/deploy.
copy your jdbc-driver (as configured in jetspeed-ds.xml) to $JBOSS/server/default/lib
(note: if you use the example hsqldb.jar setup of Jetspeed-2, you don't need to do this as JBoss provides it already)
add the contents of jboss-login-config.xml from the jetspeed-2 src folder portal/src/resource to $JBOSS/server/default/conf/login-config.xml