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.)

Warning

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

Warning

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:

  1. Make sure the magnolia-module-websphere jar file is your webapp's WEB-INF/lib directory.
  2. Edit the web.xml, and add the following Servlet definition:
<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>
Note that the 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.SimpleLoginModule as REQUIRED
    • Magnolia Login Module
      • Alias name magnolia
      • Add class info.magnolia.jaas.sp.jcr.JCRAuthenticationModule as REQUISITE
      • Add class info.magnolia.jaas.sp.jcr.JCRAuthorizationModule as REQUIRED