WebSphere
Magnolia Enterprise Edition ships with magnolia-module-wesphere, which provides a Servlet, necessary for Websphere to accept serving requests. (On other containers, Magnolia just uses its FilterChain with no specific endpoint.)
Please make sure that WebSphere 6.1 Fix Pack 2 (6.1.0.2) is installed on your WebSphere environment before deploying Magnolia. For more details refer to the WebSphere Fix Pack List
When installing on WebSphere, the Derby database is no longer supported due to an issue between Derby and JackRabbit on WebSphere. Please make sure to update the default configuration to use another PersistenceManager than the Derby one.
There is also an issue with Lucene 2.3.0 with WebSphere 6. For this reason it is necessary to replace WEB-INF/lib/lucene-2.3.0.jar, which is distributed with JackRabbit by default, with WEB-INF/lib/lucene-2.2.0.jar which works fine.
If you have downloaded the prebundled WebSphere war file, you can skip the following steps:
- Make sure the
magnolia-module-webspherejar file is your webapp'sWEB-INF/libdirectory. - Edit the
web.xml, and add the followingServletdefinition:
<servlet>
<description>Spool servlet</description>
<servlet-name>Spool</servlet-name>
<servlet-class>info.magnolia.module.websphere.Spool</servlet-class>
<init-param>
<param-name>Path</param-name>
<param-value>/docroot</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Spool</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
Servlet must be mapped to serve /*, but you might want to adapt the Path parameter to allow it to serve other static resources from your webapp.
Step 1 - Deployment via WebSphere Administration Console
- Rename the war file appropriately to magnoliaAuthor, magnoliaPublic, or any other name matching a possible configuration name of your choice.
- Deploy the archive(s) through the WebSphere administration console. (follow your WebSphere documentation)
Step 2 - Setup JAAS Authentication for Magnolia
(Refer to the WebSphere JAAS documentation: Configuring JAAS under WebSphere 6.x)- Select "Security -> Secure administration, applications, and infrastructure" from the left panel.
- Select "Java Authentication and Authorization Service -> Application logins" under "Authentication" from the right side console.
- Add the Magnolia and JackRabbit login modules:
- Jackrabbit Login Module
- Alias name
Jackrabbit - Add
org.apache.jackrabbit.core.security.SimpleLoginModuleasREQUIRED - Magnolia Login Module
- Alias name
magnolia - Add class
info.magnolia.jaas.sp.jcr.JCRAuthenticationModuleasREQUISITE - Add class
info.magnolia.jaas.sp.jcr.JCRAuthorizationModuleasREQUIRED