|
These instructions have only been tested with the following application containers: |
Index
- Assumptions
- Building the Hippo Repository
- Building the Hippo CMS
- Adapting your Application Container
- Known Issues
Assumptions
All the provided examples and configurations assume the following JNDI resources have been configured in the application container.
Hippo Repository:
jdbc/repositoryDataSource (slide db)
x.ctp (JMS cluster topic [optional])
Hippo CMS:
jdbc/ProjectData (workflow & quartz db)
Both:
x.tpc (JMS topic)
x.tcf (JMS topic factory)
All databases are assumed to be on MySQL.
A sample jboss-web.xml & weblogic.xml are included with both the CMS & the repository.
Building the Hippo Repository
Obtain the Hippo Repository from the public SVN repository.
Add the following to your build.properties file:
maven.war.src=${basedir}/J2EE-template
|
This template is only available in since 1.2.14, but should work with earlier versions if you update the jmsbridge jar to 1.01.04. |
The war can then be built with:
maven war
Building the Hippo CMS
Deployment on J2EE Application Containers requires the use of Hippo CMS version 6.05.03, 6.06.00, or higher.
|
Since both have not yet been released, currently either the 6.05.xx branch or the trunk will have to be used. |
Obtain Hippo CMS from the public SVN repository.
The additional build.properties you will need to use are:
maven.cocoon.repository.host=localhost #maven.cocoon.repository.port=7001 maven.cocoon.repository.port=8080 maven.cocoon.site.domain=localhost maven.cocoon.hsqldb.use=false cms.datasource.workflow.jndi=jdbc/ProjectData cms.datasource.workflow.reference=jdbc/ProjectData maven.cocoon.servermanager.configuration=example_project maven.cocoon.servermanager.configuration.dir=${basedir}/templates/example_project_mysql_J2EE maven.cocoon.servermanager.configurationlocation=context://WEB-INF/configuration maven.cocoon.servermanager.worklocation=context://WEB-INF/smwork maven.cocoon.site.directory=sites/hippo-cms/ jms.jndi.initial.factory=nl.hippo.jmsbridge.BridgeContextFactory jms.jndi.secondary.factory=- jms.connection.factory.jndi=x.tcf jms.connection.factory=jms/repositoryTCF jms.topic.jndi=x.tpc jms.topic=jms/repositoryTopic
The war can then be build with:
maven -deditor cocoon:war
Adapting your application container
WebLogic
|
The wars will need to be exploded when deploying on WebLogic, see the Known Issues. |
WebLogic 10
Add xercesImpl-2.9.0.jar to the lib directory of your domain.
WebLogic 9.2
Add the following jars in to the lib directory of your domain:
xercesImpl-2.9.0.jar
xalan-2.7.0.jar
bcel-5.1.jar
jakarta-regexp-1.4.jar
Now locate the startup script for your WebLogic instance, which should be <path-to-bea>/user_projects/domains/<your-project>/bin/startWebLogic.sh and edit this. Locate the line that starts with "CLASSPATH=${WEBLOGIC_CLASSPATH}:". Prepend the full path to the above jars, separated by colons, to the weblogic classpath, like is done for xercesImpl below.
CLASSPATH="<path-to-bea>/user_projects/domains/<your-project>/lib/xercesImpl-2.9.0.jar:${WEBLOGIC_CLASSPATH}:<remainder-of-the-line>"
JBoss
JBoss 4.2.1GA
The wars will work without any modifications to the container itself.
JBoss 4.0.5GA
The wars will work without any modifications to the container itself.
Know Issues
- On application containers which do not explode the wars themselves, the wars will need to be deployed in exploded form.
- the location in WEB-INF/classes/log4j.xml, is relative to the application containers working directory, unfortunately this differs per container, so it will probably need to be edited manually.
- this procedure has not been tested with IBM WebSphere, but it's known that at least for version 5.1 of WebSphere a commons-logging.properties will have to be added to WEB-INF/classes, this file can be found in the sources in the following location: editor/src/webapp/WEB-INF/classes. This file is removed during building as it will break deployment on other containers.