Page tree
Skip to end of metadata
Go to start of metadata

The IBM WebSphere Compatibility module is an Enterprise Edition module that provides a servlet for the IBM WebSphere application server to accept requests. With other application servers, Magnolia uses its filter chain with no specific endpoint. In Magnolia 5.5, IBM WebSphere 9 works with the WebSphere Compatibility module.

Installing

Maven is the easiest way to install the module. Add the following dependency to your bundle:

<dependency>
  <groupId>info.magnolia</groupId>
  <artifactId>magnolia-module-websphere</artifactId>
  <version>1.4</version>
</dependency>

Pre-built jars are also available for download. See Installing a module for help.

Adding the servlet to web.xml

If you downloaded the prebundled IBM WebSphere war file, skip this step:

  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 Servletdefinition:

    <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 can adapt the Path parameter to allow it to serve other static resources from your webapp.

Deploying via IBM WebSphere Administration Console

  1. Rename the war file to magnoliaAuthor, magnoliaPublic, or to a name that matches a configuration name of your choice.
  2. Deploy the archive(s) through the IBM WebSphere administration console. (See the IBM WebSphere documentation for precise instructions.)

Setting up JAAS Authentication for Magnolia

Refer also to the IBM WebSphere JAAS documentation: Login configuration for Java Authentication and Authorization Service.

  1. In the IBM WebSphere Application Server, select Security  Global Security in the left panel.
  2. Under Authentication select Java Authentication and Authorization Service  Application logins .
  3. Add the Magnolia login module:
    1. Add alias: magnolia .
      1. Add class info.magnolia.jaas.sp.jcr.JCRAuthenticationModule as REQUISITE .
      2. Add class info.magnolia.jaas.sp.jcr.JCRAuthorizationModule as REQUIRED .

Disabling Contexts and Dependency Injection 1.2

  1. In the IBM WebSphere Application Server expand Servers → Server Types and select WebSphere application servers in the left panel.
  2. In the right panel under Application servers select <server name>  .
  3. Under Server Infrastructure expand Java and Process Management and select Process definition → Java Virtual Machine → Custom properties .
  4. Add new properties:
    1. Name: com.ibm.ws.cdi.enableCDI, value: false .
    2. Name: com.ibm.ws.cdi.enableImplicitBeanArchives, value: false .

Disabling WebSphere's built-in JAX-RS

  1. In the IBM WebSphere Application Server expand: Servers → Server Types and select WebSphere application servers in the left panel.
  2. In the right panel select <server name> under Application servers .
  3. Under Server Infrastructure expand Java and Process Management and select Process definition → Java Virtual Machine → Custom properties .
  4. Add a new property:
  • Name: com.ibm.websphere.jaxrs.server.DisableIBMJAXRSEngine, value: true .

Changing the class loading option for module

  1. In the IBM WebSphere Application Server expand: Applications → Application Types and select WebSphere enterprise applications in the left panel.
  2. In the right panel select <application name> (magnoliaAuthor or magnoliaPublic) and under Modules → Manage Modules → <module name> (magnolia) → select from Class loader order the option Classes loaded with local class loader first (parent last) .
  • No labels