Deployment Example: Deploying and Customizing the Documentum Portlet

Chapter 4 Deploying Documentum Portlets

This chapter contains instructions for Deploying the Documentum Portlets on Sun Java System Portal Server on Solaris.

Deploying the Documentum Portlets

This section contains the following:

ProcedureConfiguring Portal Server

Perform the steps in this section on Portal Server.

  1. Download the portal WAR file from EMC download site.

    You must download the following portlets. To download, , login to https://emc.subscribenet.com/ using your DCTM download credentials. On the left hand menu, click on Product Search and enter the following phrases each time to search for the corresponding portlets.

    • Documentum Web Development Kit for Portlets for Solaris, Version 5.3 SP4

    • Documentum Web Publisher Portlets for Solaris, Version 5.3 SP1

    • Documentum ECI Portlet, Version 5.3

    • Documentum eRoom (Version 7) Portlets

  2. Create a directory and save the Web Development Kit for Portlets WAR file in this directory.

  3. Expand the WAR file.

    Use the jar command from JDK1.4.x. For example, type jar -xvf wdkforportlets.war.

  4. Change ServletContextKeywords_sunportal in the WEB-INF/classes/com/documentum/web/env/EnvironmentService.properties file to include Sun-Java-System/Application-Server.

    For example:


    ServletContextKeywords_sunportal=Sun-Java-System/Application-Server
  5. Change the PortalDescription and PortalVersion values in the WEB-INF/classes/com/documentum/web/env/sun/SunPortalEnvironment.properties file.

    For example:


    PortalDescription=Sun Java System Portal Server
    PortalVersion=7.0
  6. From the top directory (created in Step 2) that contains the WAR file, create the WAR file that's ready for deployment.

    For example, type:


    rm wdkforportlets.war
    jar -cvf wdkforportlets.war *

    Note –

    If you plan to configure authentication, perform this step after configuring authentication.


ProcedureConfiguring Portlet Authentication and User Principal Authentication

The following configuration is for Web Development Kit Portlets and Web Publisher Portlets.

  1. Expand the WAR file using the jar command from JDK1.4.x.

    For Web Development Kit Portlets, type jar -xvf wdkforportlets.war and for Web Publisher Portlets, type jar -xvf wpportlets.war.

  2. Ensure that the UserPrincipalAuthenticationScheme is above the DocbaseLoginAuthenticationScheme in the AuthenticationSchemes.properties file in WEB-INF/classes/com/documentum/web/formext/session/ directory.

  3. Open the WEB-INF/classes/com/documentum/web/env/sun/SunPortalEnvironment.properties file, add the following line, and save the file:


    AuthenticationMode=trusted
  4. Encrypt the superuser's password and paste the encrypted form of the password into WEB-INF/classes/com/documentum/web/formext/session/TrustedAuthenticatorCredentials.properties file.

    You can encrypt the Superuser's password for the repository with the trusted authenticator tool (com.documentum.web.formext.session.TrustedAuthenticatorTool).

    1. From the command line, run the following command.

      Substitute the actual repository password to be encrypted:


      cd <war_file_director>/WEB-INF/classes
      java TrustedAuthenticatorTool password
      

      The output will look similar to the following:


      Encrypted: [d7d1d6e383d6d4e1d0], Decrypted: [my.pwd6\]
    2. Paste the encrypted form of the password into WEB-INF/classes/com/documentum/web/formext/session/TrustedAuthenticatorCredentials.properties file.

      Each repository must have three entries (substitute the actual repository name in the sample entries below):


      Repository_name.user
      Repository_name.password
      Repository_name.domain

      If no domain, then enter the following:


      Repository_name.domain=

      For example:


      myrepository.user=ecmdocbase
      myrepository.password=d7d1d6e383d6d4e1d0
      myrepository.domain=
  5. Add docbase name in <war_file_directory>/wdk/app.xml file.

    For example:


    <authentication>
    	<!-- Default domain and docbase to authenticate against -->
    	<domain></domain>
    	<docbase>ecmdocbase</docbase>
    	<!-- Class that provide the authentication service -->
    	<service_class>com.documentum.web.formext.session.AuthenticationService</service_class>
    	<!-- Single Sign-On authentication scheme configuration -->
    	<sso_config>
    		<ecs_plug_in></ecs_plug_in>
    		<ticket_cookie></ticket_cookie>
    		<user_header></user_header>
    	</sso_config>
    </authentication>

ProcedureConfiguring Web Publisher Portlet

  1. Create a directory, save the WAR file into this directory, and expand the WAR file.

    Use the jar command from JDK1.4.x. For example, type jar -xvf wpportlets.war.

  2. Open wpportlets/web/wpportlets/app.xml file and change the following configuration to point to Web publisher application.


    <wpurl>http://<web_publisher_server_hostname>:<portnumber>/wp</wpurl>
  3. From the top directory that contains the WAR file, create the WAR file that's ready for deployment.

    For example, type:


    rm wpportlets.war
    jar -cvf wpportlets.war *

ProcedureKnown Issue for Web Publisher Portlet

It has been observed that single-sign-on does not work for non Documentum admin users once Web Publisher Portlet is deployed on the Sun Java System Portal Server. In addition to authentication changes described in Configuring Portlet Authentication and User Principal Authentication, perform the following steps.

  1. Download the WPPortlets_BUG.zip file and unzip it.


    Note –

    Please open a Sun Support case or ticket to obtain the WPPortlets_BUG.zip file.


  2. In the machine where you have deployed your WPP portlets, make a backup copy of your current web.xml file in the /var/opt/SUNWappserver/domains/domain1/applications/j2ee-modules/wpportlets/WEB-INF/ directory and replace it with the web.xml from the WPPortlets_BUG.zip file.


    Note –

    If you made changes to the web.xml file in the /var/opt/SUNWappserver/domains/domain1/applications/j2ee-modules/wpportlets/WEB-INF/ directory, you have to re-do it after copying the web.xml from the WPPortlets_BUG.zip file.


  3. In the machine where you have deployed your WPP portelets, make a backup copy of TicketedRedirect.class in the /var/opt/SUNWappserver/domains/domain1/applications/j2ee-modules/wpportlets/WEB-INF/classes/com/documentum/wpportlets/library/ticketedredirect directory and replace it with TicketedRedirect.class file from the WPPortlets_BUG.zip file.

  4. Restart the Sun Java System Application Server.

  5. Test WPP portlets by logging as an user who is not the DCTM Admin user.

ProcedureConfiguring eRooms Portlets

  1. To configure Log4j, open $DOCUMENTUM/config/log4j.properties file and add the following lines into log4j.properties file.


    # Enable log messages from eRoom Portlets
    log4j.logger.com.documentum.eroom=DEBUG,eRoomAppender
    #eRoom Portlets Appender
    log4j.appender.eRoomAppender=org.apache.log4j.RollingFileAppender
    log4j.appender.eRoomAppender.File=<$Documentum>/logs/eRoomPortlets.log
    log4j.appender.eRoomAppender.MaxFileSize=500KB
    log4j.appender.eRoomAppender.layout=org.apache.log4j.PatternLayout
    log4j.appender.eRoomAppender.layout.ConversionPattern=%d{HH:mm:ss} %p %c %m %n
  2. Create a directory, save the WAR file into this directory, and expand the WAR file.

    Use the jar command from JDK1.4.x. For example, type jar -xvf MyeRoom.war.

  3. Open WEB-INF/classes/com/documentum/eroom/utils/eRoom.properties file and change the path in portlet.eroom.server.path.

    For example, modify portlet.eroom.server.path=http://<eroom_server_hostname>/.

  4. From the top directory that contains the WAR file, create the WAR file that's ready for deployment.

    For example, type the following:


    rm MyeRoom.war
    jar -cvf MyeRoom.war *

    Note –

    Refer to eRoom 7 Installation, Upgrade, and Configuration Guide for installing and configuring eRoom Server.


ProcedureConfiguring ECIS portlets

  1. Open $DOCUMENTUM/config/dfc.properties file and add the following lines:


    dfc.search.ecis.enable=true
    dfc.search.ecis.host=<eci_server_hostname>
    dfc.search.ecis.port=<eci_server_RMI_portnumber_default_3005>
    dfc.search.ecis.login=<username_defautl_guest>
    dfc.search.ecis.password=<password_defautl_guest_password_askonce>
  2. Create a directory, save the WAR file into this directory, and expand the WAR file.

    Use the jar command from JDK1.4.x: For example, type jar -xvf eciPortlet.war.

  3. Open WEB-INF/web.xml file and change RMI_REGISTRY_HOST and RMI_REGISTRY_PORT.


    <context-param>
    	<param-name>RMI_REGISTRY_HOST</param-name>
    	<param-value>eci_server_hostname</param-value>
    	<description>The name of the RMI server</description>
    </context-param>
    <context-param>
    	<param-name>RMI_REGISTRY_PORT</param-name>
    	<param-value>eci_server_RMI_portnumber</param-value>
    	<description>The port for the RMI server</description>
    </context-param>
  4. Copy the WEB-INF/lib/dlcc.jar file to <AppServer_Base_Dir>/appserver/lib directory.

  5. Copy the following configuration file from ECI_Server to portal server.


    $DOCUMENTUM/eci/www/docs/conf/client.conf
  6. From the top directory that contains the WAR file, create the WAR file that's ready for deployment.

    For example, type the following:


    rm eciPortlet.war
    jar -cvf eciPortlet.war *

ProcedureDeploying the Portlets

Deploy each WAR file onto Portal Server.

  1. Create a password file that contains portal user amadmin's password in /tmp/password or any other directory.

  2. Go to directory where the Documentum Portlets WAR files are located.

    1. Deploy WDK Portlets.

      Type <PortalServer_Base_Dir>/bin/psadmin deploy-portlet -u amadmin -f /tmp/password -p portal1 -g wdkforportlets.war

    2. Deploy Web Publisher Portlets.

      Type <PortalServer_Base_Dir>/bin/psadmin deploy-portlet -u amadmin -f /tmp/password -p portal1 -g wpportlets.war

    3. Deploy ECI Server Portlets.

      Type <PortalServer_Base_Dir>/bin/psadmin deploy-portlet -u amadmin -f /tmp/password -p portal1 -g eciPortlet.war

    4. Deploy eRoom Portlets.

      Type <PortalServer_Base_Dir>/bin/psadmin deploy-portlet -u amadmin -f /tmp/password -p portal1 -g MyeRoom.war

  3. To Undeploy, for example, type /opt/SUNWportal/bin/psadmin undeploy-portlet -u amadmin -f /opt/SUNWportal/bin/pass -p portal1 -g wdkforportlets.war

ProcedureConfiguring the Desktop

  1. Create JSPTableContainer for each WAR file.

    Due to parallel execution of all portlets in the above layout, sometimes a generic message Content not available is displayed in the portlets. This is due to some synchronization issues. To avoid this problem, turn off parallel execution of portlets by changing portletRenderModeParallel=false to portletRenderModeParallel=true in <PortalServer_Instance_Dir>/portals/portal1/config/desktopconfig.properties file. Please repeat this process for all portals and restart the application server.

  2. Add channel onto appropriate container.