You are here

Installing Alfresco on WebSphere

This section describes how to install Alfresco on WebSphere 7.0. These instructions are valid for installing on Windows 2008.

See the Support Portal for the currently required Fix Pack level. It is important that both the application server and JDK fix pack components are applied.

Alfresco does not support CIFS Kerberos authentication on WebSphere. This is because Alfresco relies on Sun JDK internal classes.

  1. Download the Enterprise EAR file from the Support Portal and extract it to an empty directory.

    This embeds Alfresco Explorer and Share, plus the necessary WebSphere configuration to use the myfaces1_1 shared library with parent-last loading order.

  2. Create a Myfaces v1.1 shared library.

    Because neither of the versions of JSF that ship with WebSphere 7 are compatible with Alfresco, you must define a new isolated shared library in WebSphere that contains a compatible implementation. This is documented in the Configuring JavaServer Faces implementation section of the WebSphere 7 manual. The Alfresco Enterprise .ear file embeds an appropriate shared library definition in META-INF/ibmconfig, so it is only necessary to prepare WebSphere.

    Copy and extract the file to the root WebSphere installation directory. This creates a myfaces1_1 directory containing all the .jars required by the myfaces1_1 shared library on WebSphere. For example, on Windows:

    cd /d "C:\Program Files\IBM\WebSphere\AppServer"
    java\bin\jar xvf
  3. Enable Xalan as the standard JAXP Transformer.

    Copy the file $WAS_INSTALL_ROOT/java/jre/lib/ (for example, C:\Program Files\IBM\WebSphere\AppServer\java\jre\lib\ to $WAS_INSTALL_ROOT/java/jre/lib/

    Edit the file and change the following line: to read:
    Also, add the following line:
  4. Configure Share to point to the WebSphere default HTTP port 9080 (or another number that you wish to specify).
    1. Locate the /web-server/classpath/alfresco/web-extension/share-config-custom.xml.sample file from the extracted file.
    2. Copy the share-config-custom.xml.sample file to $WAS_INSTALL_ROOT/lib/alfresco/web-extension/share-config-custom.xml (For example, C:\Program Files\IBM\WebSphere\AppServer\lib\alfresco\web-extension\share-config-custom.xml).
    3. Uncomment this section by removing the begin comment <-- and end comment --> lines surrounding this section.

        <config evaluator="string-compare" condition="Remote">
                  <name>Alfresco - unauthenticated access</name>
                  <description>Access to Alfresco Repository WebScripts that do not require authentication</description>
                  <name>Alfresco - user access</name>
                  <description>Access to Alfresco Repository WebScripts that require user authentication</description>
                  <name>Alfresco Feed</name>
                  <description>Alfresco Feed - supports basic HTTP authentication via the EndPointProxyServlet</description>
    4. Edit the file, replacing all instances of 8080 with 9080 (or the port number that you specify) and all instances of yourserver with localhost (or a different host running Alfresco).
    5. In certain environments, an HTTP request originating from Flash cannot be authenticated using an existing session. For these cases, it is useful to disable the Flash-based uploader for Share Document Libraries.

      To disable the Flash uploader, add the following lines to the Document Library config section:

      <!-- Document Library config section --> 
         <config evaluator="string-compare" condition="DocumentLibrary" replace="true"> 
               File upload configuration 
    6. Save the file.
  5. Install a license.

    If you have been issued with a .lic license file for this version of Alfresco, copy it to a $WAS_INSTALL_ROOT/lib/alfresco/extension/license directory (for example, C:\Program Files\IBM\WebSphere\AppServer\lib\alfresco\extension\license\mylicense.lic).

  6. (Optional) Enable WCM.

    You need the WCM bootstrap context on the class path.

    Download the wcm-bootstrap-context.xml file and copy it to the $WAS_INSTALL_ROOT/lib/alfresco/extension directory (for example, C:\Program Files\IBM\WebSphere\AppServer\lib\alfresco\extension).

  7. Define the environment information using the extension classpath mechanism and the file.
    1. Locate the /web-server/classpath/ file from the extracted file.
    2. Copy the file to $WAS_INSTALL_ROOT/lib, removing the .sample extension.

      For example, C:\Program Files\IBM\WebSphere\AppServer\lib\

    3. Disable the mbean server lookup by adding the following property mbean.server.locateExistingServerIfPossible=false.
    4. Add the following property lucene.indexer.useNioMemoryMapping=false.

      If this property is true, it uses the nio native buffering for accessing the index information file. Set this property to false to enable writes to a byte buffer.

    5. Uncomment and edit the lines appropriate for your database type.
  8. Copy the JDBC driver jar to the ${WAS_INSTALL_ROOT}/lib directory. 

    For example, C:\ProgramFiles\IBM\WebSphere\AppServer\lib.

  9. Install the EAR file.
    1. Log on to the WebSphere Administrative console.

      For example, http://localhost:9060/ibm/console/.

    2. Navigate to Application servers > server1 > Process definition > Java Virtual Machine, and then set the Maximum heap size to 2048 MB.
    3. Navigate to Applications > New Application > New Enterprise Application.
    4. Browse to alfresco-enterprise-3.4.14.ear on the local file system, and then click Next.
    5. Select Detailed - Show all installation options and parameters, and then click Next.
    6. Under Target Resource JNDI Name, type jdbc/dummy, and then click Next.

      This step is recommended to force Alfresco to use its built in DBCP connection pool rather than a WebSphere data source. 

    7. Jump to the Map environment entries for Web modules step.
    8. For properties/dir.root, specify an absolute file system path where you would like Alfresco file data to be stored.

      For example, C:\alf_data.

    9. Leave the Hibernate properties blank, unless you want to override the default behavior, where they will be auto-detected.
    10. Click Next and Finish.
    11. Save your profile changes to the master repository.
    12. Restart the WebSphere server.

      Alfresco starts with the WebSphere server.

  10. Remove the SQL warning messages from log file.

    WebSphere shows warnings in the log file, similar to the following:

    [12/7/10 17:24:42:206 EET] 0000003a JDBCException W org.hibernate.util.JDBCExceptionReporter logWarnings SQL Warning: 4474, SQLState: 01000 
    [12/7/10 17:24:42:208 EET] 0000003a JDBCException W org.hibernate.util.JDBCExceptionReporter logWarnings [jcc][t4][10217][10310][4.8.87] 
    Connection read-only mode is not enforceable after the connection has been established. 
    To enforce a read only connection, set the read-only data source or connection property. ERRORCODE=4474, SQLSTATE=01000

    The current driver implementation will display these warnings, however, they have no impact on the operation of Alfresco. You can either choose to ignore these warnings, or you can configure the logging to stop them displaying.

    1. Open WebSphere Administrative console.
    2. Navigate to Troubleshooting > Logs and trace- Server - Change Log Detail Levels.
    3. Search for the org.hibernate.util.* component.
    4. Set org.hibernate.util.JDBCExceptionReporter class logger - Messages and Trace Levels to severe or fatal.

  11. Log in to Alfresco:
    • Alfresco Share at http://localhost:9080/share
    • Alfresco Explorer at http://localhost:9080/alfresco