Installing Portal Files in the Servlet Container

You must copy the Portal Web application to a servlet container accessible to your Web server. A servlet container is provided with or installed in addition to your Web server. It provides a runtime environment that supports concurrency, life cycle management, deployment, and other services provided for by J2EE technology. The servlet container must support


Installing the Java 2 SDK

The SAS Information Delivery Portal requires the Java 2 SDK, Standard Edition, Version 1.3.0_01 when supported by the servlet container. BEA WebLogic 5.1 and IBM WebSphere 3.5 do not support the Java 2 SDK, Standard Edition, Version 1.3.0_01, they only support Version 1.2.2. The SAS Information Delivery Portal will support Version 1.2.2 for these two servlet containers.

WebSphere 3.5 includes the Java 2 SDK, Standard Edition, Version 1.2.2, which should be used. WebLogic includes a copy of the Java 2 Runtime Environment, but does not include the Java 2 SDK, which is required to compile JSPs in the Portal Web application. The Java 2 SDK, Standard Edition, Version 1.2.2 should be installed for use with WebLogic.

Note: Some servlet containers include a copy of the Java 2 SDK. If you configure your servlet container to use this copy of Java 2, you do not need to install Java 2 from Sun Microsystems.

Note: AppDev StudioTM includes a copy of the Java 2 SDK. If you configure your servlet container to use this copy of Java 2, you do not need to install Java 2 from Sun Microsystems.


Installing the Java 2 SDK, Standard Edition, version 1.3.0_01

Install the Java 2 SDK, Standard Edition, version 1.3.0_01. As a convenience, we have included the Java 2 SDK, Standard Edition, version 1.3.0_01 on the SAS Information Delivery Portal Web Application CD. Before installing this version, we recommend that you check for a more recent release build at the Java 2 section of the Java Web site that is provided by Sun Microsystems. For more information about Java software, visit the Products and APIs section of the Java Web site that is provided by Sun Microsystems.

IBM delivers the Java 2 SDK, version 1.3.0 with WebSphere 4.0. If you using WebSphere and the IBM Java 2 SDK, make sure to install the update to the SDK that fixes APAR PQ53308.


Installing Java Extensions

To determine what extensions need to be installed on your machine, you need to locate two directories; The JavaExtensions subdirectory of the Portal setup directory and the Java extensions directory of the JDK or JRE. If you are using the JDK, the Java extensions directory is jre\lib\ext on Windows® platforms and jre/lib/ext on UNIX® platforms. If you are using the JRE, the Java extensions directory is lib\ext on Windows platforms and lib/ext on UNIX platforms.

Note: If the extensions directory does not exist, create it. If it does exist, make sure you do not replace an existing jar file with an older version. The jar file version can be determined by looking at the Manifest.mf file located in the jar. Install the extensions by copying them into the extension directory.

Follow these rules to determine which jar files to copy from the JavaExtensions subdirectory of the Portal setup directory to the Java extensions directory of the JRE / JDK.

  1. Copy jndi.jar, providerutil.jar, and ldap.jar from the JavaExtensions subdirectory to the Java extensions directory.

  2. If the Java extensions directory contains iomdriver.jar, iomprx.jar, brgorb.jar, or netutil.jar, then copy all four jar files from the JavaExtensions subdirectory to the Java extensions directory.

  3. If the Java extensions directory contains webAF.jar, connect.jar, or remobj.jar then copy all three jar files from the JavaExtensions subdirectory to the Java extensions directory.

Installation Tip for IBM WebSphere 3.5 and 4.0: WebSphere includes a copy of Java 2 that already contains jndi.jar and providerutil.jar in its extension directory. Only copy ldap.jar from the JavaExtensions subdirectory into the extensions directory of the Java 2 that ships with WebSphere.


Installing a Servlet Container

If you do not have a servlet container installed or you would like to run the Portal in a controlled environment, we recommend that you use the Tomcat Servlet container, version 3.2 available from the Apache Jakarta project to get running quickly. This is a free Java Servlet, version 2.2 compliant, container. Please review your requirements when deciding on a servlet container to use in your production environment.

As a convenience, we have included the Tomcat Servlet container, Version 3.2.1 on the SAS Information Delivery Portal Web Application CD. Before installing this version, we recommend that you check for a more recent release build at the Jakarta Web site's download page.

Installation Tip for Apache Tomcat 4.0: Tomcat includes a copy of jndi.jar and ldap.jar in its common\lib directory. However, it does not include a copy of providerutil.jar. Copy providerutil.jar from the JavaExtensions subdirectory of the Portal setup directory into the common\lib directory of Tomcat.


JVM Configuration

A content channel often obtains its content from a Web server running on the Internet. The example shipped with the Portal obtains content from Moreover.com. If your site uses a proxy server, you will need to configure the proxy host and proxy port in the Java virtual machine. Note: The properties used to configure the JVM will affect all programs, not just the Portal, running in the JVM. The properties are set in the JVM by passing them into the java command. The following list shows possible values for select servlet containers.

Installation Tip for Apache Tomcat 3.2: Set the TOMCAT_OPTS environment variable to contain

-Dhttp.proxyHost=proxyHost -Dhttp.proxyPort=portNumber

Installation Tip for Apache Tomcat 4.0: Set the CATALINA_OPTS environment variable to contain

-Dhttp.proxyHost=proxyHost -Dhttp.proxyPort=portNumber

Installation Tip for Allaire JRun 3.0: Set the user.javaargs property in the local.properties file to contain

-Dhttp.proxyHost=proxyHost -Dhttp.proxyPort=portNumber
The local.properties file is located in the server directory where the Portal has been installed.

Installation Tip for BEA WebLogic 5.1: Edit the startweblogic script to include

-Dhttp.proxyHost=proxyHost -Dhttp.proxyPort=portNumber
as options to the java command.

Installation Tip for BEA WebLogic 6.1: Edit the startweblogic script to include

-Dhttp.proxyHost=proxyHost -Dhttp.proxyPort=portNumber
as options to the java command.

Installation Tip for iPlanet WebServer 4.1: Consult iPlanet documentation for details.

Installation Tip for IBM WebSphere 3.5: From the administration console, select the server that the Portal will be running on. On the right hand side of the console, select the "General" tab. Enter the following in the text field for "Command line arguments:".

-Dhttp.proxyHost=proxyHost -Dhttp.proxyPort=portNumber

Installation Tip for IBM WebSphere 4.0: Edit the jvmSetting section in the server-cfg.xml file to include

<systemProperties xmi:id="SystemProperty_<last number+1>" name="http.proxyHost" value="proxyHost"/>
<systemProperties xmi:id="SystemProperty_<last number+2>" name="http.proxyPort" value="proxyPort"/>


Installing the Portal into the Servlet Container

Upgrade Note: Remember to stop the servlet container before upgrading. We also recommend making a backup copy of all files in the Portal directory.

Upgrade Note: If your servlet container caches compiled JSPs, remove all the compiled Portal JSP to guarantee that the new JSPs are used.

If you choose to install the Portal under a 2.2 compliant servlet container, installation can be streamlined using the WAR file generated by the PortalConfigure tools. If your servlet container is 2.2 compliant, please go to Installing the Portal using a WAR File.

If you choose to install the Portal under a non-compliant servlet container, installation varies from servlet container to servlet container. If your servlet container is not 2.2 compliant, please go to Installing the Portal Manually.


Installing the Portal using a WAR File

The mechanism used to install the Portal WAR file varies from servlet container to servlet container, so refer to your servlet container documentation for details.

Installation Tip for Apache Tomcat 3.2: Copy the Portal.war file located in the Portal setup directory to the webapps directory in the Tomcat installation directory. Tomcat will automatically deploy the Portal WAR file when the servlet container is restarted.

Note: If you have already deployed the Portal, you must delete the Portal directory in webapps in order for Tomcat to redeploy the new WAR file.

When finished, continue with Install Portal Demo Files on the SAS Server.

Installation Tip for Apache Tomcat 4.0: Copy the Portal.war file located in the Portal setup directory to the webapps directory in the Tomcat installation directory. Tomcat will automatically deploy the Portal WAR file when the servlet container is restarted.

Note: If you have already deployed the Portal, you must delete the Portal directory in webapps in order for Tomcat to redeploy the new WAR file.

When finished, continue with Install Portal Demo Files on the SAS Server.

Installation Tip for Allaire JRun 3.0: Deploy the Portal Web application using the deployment tools furnished by Allaire.

Details: After starting the JRun Admin Server and JRun Management Console, use the Management Console to set up a Web Application under the Default Server. Deploy the Web Application using the Portal WAR file.

When you are entering Web Application Information, make sure to set the Application URL and Application Deploy Directory as follows. Set the Application URL to the URL that maps to the Web application. This value is reflected in the $SERVLET_URL$ property set during the configuration process. In most cases this value will be /Portal. Set the Application Deploy Directory to the directory where the Web application is installed. This value is reflected in the $SERVLET_CONFIG_DIR$ property set during the configuration process. This value will be the subdirectory of $SERVLET_CONFIG_DIR$ that contains the WEB-INF directory. For example, if you used the installation tip during the configuration process, this value would be c:\Program Files\Allaire\JRun\servers\default\Portal.

When finished, continue with Install Portal Demo Files on the SAS Server.

Installation Tip for BEA WebLogic 5.1: Due to WebLogic's class loader implementation, the Portal can not be installed using a WAR file. Continue with Installing the Portal Manually.

Installation Tip for BEA WebLogic 6.1: Deploy the Portal Web application using the deployment tools furnished by BEA.

Details: From the administration console, select Install a Web Application. Move the Portal.war file to: c:\bea\wlserver6.1\config\mydomain\applications. Create a directory called Portal in the applications directory. Manually extract the Portal.war file (i.e. via WinZip) in c:\bea\wlserver6.1\config\mydomain\applications\Portal. To use the correct JDK, modify the script, c:\bea\wlserver6.1\config\mydomain\startWebLogic.cmd, used to start the default server using a text editor. Change JAVA_HOME=c:\jdk1.3.0_01 (for example). Save and close the file. Start the Default Server: Start -> BEA WebLogic E-Business Platform -> WebLogic Server 6.1 -> Start Default Server. Start the Default Console: Start -> BEA WebLogic E-Business Platform -> WebLogic Server 6.1 -> Start Default Console. From the left-pane of the console, drill down to mydomain -> Deployments -> Web Applications Select Install a new Web Application. Browse to find the Portal.war file. Select Upload.

When finished, continue with Install Portal Demo Files on the SAS Server.

Installation Tip for iPlanet WebServer 4.1: Due to iPlanet's deployment mechanism, the Portal can not be installed using a WAR file. Continue with Installing the Portal Manually.

When finished, continue with Install Portal Demo Files on the SAS Server.

Installation Tip for IBM WebSphere 3.5: Deploy the Portal Web application using the deployment tools furnished by IBM.

Details: From the administration console, select "Console > Tasks > Convert a WAR file". A wizard will be displayed to guide you through the WAR file deployment. Select the deployment servlet engine and a Virtual Host (likely default_host). Next, use the "Browse" button to select the Portal WAR file and a destination directory. If you selected default_host as your Virtual Host, then the destination directory will be default_host. Finally, enter a Web application Web path, /Portal, and a Web application name, Portal.

When finished, continue with Install Portal Demo Files on the SAS Server.

Installation Tip for IBM WebSphere 4.0: Deploy the Portal Web application using the deployment tools furnished by IBM.

Details: First, use the Application Assembly Tool (AAT) to create an EAR file. Start the AAT from a DOS prompt, e.g. c:\WebSphere\AppServer\bin\assembly.bat. Select Create Application Wizard. On the Specifying Application Properties panel set Display Name toPortalApp, File Name to Portal.ear, then click Next. Click Next in Adding Supplementary Files. Click Next in Choosing Application Icons. Click Next in Adding EJB Modules. Click Add... in Adding Web Modules. Browse to the Portal.war file and click Open. Enter /Portal for the Context Root. Click OK (this may take a minute to process). Click Next. Click Next in Adding Application Client Modules. Click Finish in Adding Security Roles. Use File -> Save As to save as c:\WebSphere\AppServer\bin\Portal.ear (this may take a couple minutes). Use File -> Exit to exit the AAT.

Second, start the administrator server and console. Select Start -> Programs -> IBM WebSphere -> Application Server 4.0 -> Start Application Server. Select: Start -> Programs -> IBM WebSphere -> Application Server 4.0 -> Administrator's Console.

Third, deploy the Portal.ear file using the admin console. In the admin console, expand Nodes -> hostname -> Enterprise Applications. Click Install button in the right pane. For the Path, Browse to Portal.ear then select it and click Open and then Next. Note: The Portal.ear file is located in the directory specified when save it saved using the Application Assembly Tool (i.e. c:\WebSphere\AppServer\bin\Portal.ear). Specify a Virtual Host Name of default_host and Precompile JSPs to No. Click Next. Select Finish (This could take several minutes). Save the configuration by clicking the Save button. Save it under server-cfg.xml and click Ok. In the Admin Console, expand Nodes -> hostname -> Application Servers. Select Default Server. Select Web Server Plug-in Configuration. Select Generate.

Fourth, restart the WAS 4.0 admin server. In the left pane, expand Nodes -> hostname -> Application Servers. Select Stop (Stopping the admin server will kill the admin console that you are using. But, that's okay). Select OK. Select Start -> Programs -> IBM WebSphere -> Application Server 4.0 -> Start the Admin Server.

When finished, continue with Install Portal Demo Files on the SAS Server.


Installing the Portal Manually

The mechanism used to install the Portal manually varies from servlet container to servlet container, so refer to your servlet container documentation for details. The following instructions show possible values for select servlet containers running on Windows platforms.

  1. Copy the Portal directory and subdirectories to a directory relative to your servlet container installation. The required directory location is determined by your servlet container, so refer to your servlet container documentation for details.

    Installation Tip for BEA WebLogic 5.1: The default directory is Weblogic\myserver\public_html.

    After copying the Portal directory, make a copy of the Weblogic\myserver\public_html\Portal\jsp directory in Weblogic\myserver\public_html. This is required to handle context relative paths for JSPs.

    Installation Tip for iPlanet WebServer 4.1: The default directory is Netscape\Server4\docs.

    After copying the Portal directory, make a copy of the Netscape\Server4\docs\Portal\jsp directory in Netscape\Server4\docs\. This is required to handle context relative paths for JSPs. You should also make certain servlets and JSPs are enabled.

    Before you continue with these instructions, make sure that the WEB-INF directory is protected from casual browsing by users and clients. The WEB-INF directory includes the Portal configuration files, which contain information about your directory server.

  2. Declare the Portal Web application. The declaration of the Portal Web application varies with each available servlet container.

    Installation Tip for BEA WebLogic 5.1: Not required

    Installation Tip for iPlanet WebServer 4.1: Not required

  3. Add the WEB-INF\classes directory and the JAR files that are contained in the WEB-INF\lib directory to your CLASSPATH environment variable in the startup script or configuration file that you use with your servlet container.
     
    <path>\Portal\WEB-INF\classes;
    <path>\Portal\WEB-INF\lib\edir.jar;
    <path>\Portal\WEB-INF\lib\jndiedir.jar;
    <path>\Portal\WEB-INF\lib\portal.jar;
    <path>\Portal\WEB-INF\lib\jndiportal.jar;
    <path>\Portal\WEB-INF\lib\retrieve.jar;
    <path>\Portal\WEB-INF\lib\jaxp.jar;
    <path>\Portal\WEB-INF\lib\parser.jar;
    <path>\Portal\WEB-INF\lib\webAFServerPages.jar;
    

    If any of the following JAR files were not moved to the Java extensions directory of the JDK, add them to your CLASSPATH as well.

     
    <path>\Portal\WEB-INF\lib\brgorb.jar;
    <path>\Portal\WEB-INF\lib\connect.jar;
    <path>\Portal\WEB-INF\lib\iomdriver.jar;
    <path>\Portal\WEB-INF\lib\iomprx.jar;
    <path>\Portal\WEB-INF\lib\netutil.jar;
    <path>\Portal\WEB-INF\lib\remobj.jar;
    <path>\Portal\WEB-INF\lib\webAF.jar;
    

    Installation Tip for BEA WebLogic 5.1: The classpath can be added to the WEBLOGIC_CLASSPATH environment variable in the startup script, startWebLogic.cmd on Windows NT.

    Installation Tip for iPlanet WebServer 4.1: The classpath can be added to the jvm.classpath property in the Netscape/Server4/https-machine/config/jvm12.conf file.

  4. Register each of the servlets with your servlet container and create a mapping for the URL to the servlet class.

    The registration and mapping process varies with each available servlet container. The PortalServlet is the only servlet that requires you to provide initial parameters as part of the registration. The only initial parameter that you must set is the ConfigPath parameter, which defines the absolute path to the directory that contains the Portal.properties file.

    Installation Tip for BEA WebLogic 5.1: Modify Weblogic\weblogic.properties to contain the following (Note: This example assumes the Portal name is idp and WebLogic was installed in c:\weblogic):

    weblogic.httpd.register.idp=com.sas.edir.webapp.portal.PortalServlet
    weblogic.httpd.initArgs.idp=ConfigPath=C:/weblogic/myserver/public_html/Portal/WEB-INF/
    weblogic.httpd.register.Output=com.sas.edir.webapp.portal.PackageEntryServlet
    weblogic.httpd.register.PortalPersonalize=com.sas.edir.webapp.portal.PersonalizeServlet
    weblogic.httpd.register.Document=com.sas.edir.webapp.portal.DocumentServlet
    weblogic.httpd.register.StoredProcess=com.sas.edir.webapp.portal.ReportProcessingServlet
    

    Installation Tip for iPlanet WebServer 4.1: Modify Netscape\Server4\https-machine\config\servlets.properties to contain the following (Note: This example assumes the server was installed in c:\Netscape):

    servlet.idp1.code=com.sas.edir.webapp.portal.PortalServlet
    servlet.idp1.initArgs=ConfigPath=C:/Netscape/Server4/docs/Portal/WEB-INF/
    servlet.idp1.context=global
    servlet.idp1.startup=false
    servlet.Output1.code=com.sas.edir.webapp.portal.PackageEntryServlet
    servlet.Output1.context=global
    servlet.Output1.startup=false
    servlet.PortalPersonalize1.code=com.sas.edir.webapp.portal.PersonalizeServlet
    servlet.PortalPersonalize1.context=global
    servlet.PortalPersonalize1.startup=false
    servlet.Document1.code=com.sas.edir.webapp.portal.DocumentServlet
    servlet.Document1.context=global
    servlet.Document1.startup=false
    servlet.StoredProcess1.code=com.sas.edir.webapp.portal.ReportProcessingServlet
    servlet.StoredProcess1.context=global
    servlet.StoredProcess1.startup=false
    

    Modify Netscape\Server4\https-machine\config\rules.properties to contain the following (Note: This example assumes the Portal name is idp):

    /Portal/idp=idp1
    /Output=Output1
    /PortalPersonalize=PortalPersonalize1
    /Document=Document1
    /StoredProcess=StoredProcess1
    

  5. Enable the invoker/servlet servlet to allow webEIS documents and the MDDB viewer to function correctly.

    Installation Tip for BEA WebLogic 5.1: Modify Weblogic\weblogic.properties by uncommenting the registration of the ServletServlet. Only perform this step after reading the documentation provided by WebLogic outlining potential security risks associated with enabling the ServletServlet and verifying that this does not pose a security risk to your site. The ServletServlet definition in weblogic.properties has a typographic error. The weblogic.httpd.register.servlets definition contains an extra s at the end of servlets and should read weblogic.httpd.register.servlet.

  6. Enable automatic page compilation for JSPs.

    Installation Tip for BEA WebLogic 5.1: Modify Weblogic\weblogic.properties by uncommenting the WEBLOGIC JSP PROPERTIES section of the file. You must set the compilation command to point to the Java compiler installed during the Java 2, SDK installation.


Install Portal Demo Files on the Servlet Container Server

Upgrade Note: If you are upgrading from the SAS Information Delivery Portal, release 1.1, you have already installed the Portal demo files. You may skip this section.

Note: This step is recommended, but is required only if you want to use the document examples that are provided as part of the demo Portal.

If the servlet container server does not have access to the Portal setup directory, you must install the demo files on your servlet container server. To do this, locate the Portal setup directory and copy the ServletDemos subdirectory and its contents of a location that is accessible to your servlet container server. You specified this location when defining the $SERVLET_DEMO_DIR$ property during the configuration process.