• No results found

Thick client versus thin client requirements

Chapter 2. Setting up development environments

2.1 Content Engine Java development setup

2.1.3 Thick client versus thin client requirements

The term thick client as used in this book refers to stand-alone Java applications that are running outside of a J2EE application server such as a scheduled nightly batch job that uploads documents to CE. Thin client as used in this book refers to Java applications deployed and running in a J2EE application server such as a JSP-based Web application. The requirements for thick client versus thin client vary slightly, so we discuss each in detail.

Thick client EJB transport requirements

For the EJB transport, .jar files that are specific to the application server are required in the thick client environment. The required .jar files can change with each application server version. For the application servers supported in the current CE 4.5.0 release, Table 2-1 lists the required .jar files.

Table 2-1 Thick client EJB transport library requirements

Figure 2-2 on page 16 shows the WebSphere 6.1 Application Client installed directories.

Application server Required .jar files

WebSphere® Install the WebSphere Application Client version and patch that matches the CE application server. Use the WebSphere JRE. During runtime, use the java.ext.dirs JVM parameter mentioned in the next section

WebLogic wlclient.jar or weblogic.jar

Figure 2-2 WebSphere 6.1 Application Client installation directory

In addition to the application server .jar files, the Java virtual machine (JVM) parameters listed in this section are required for thick client applications: 򐂰 For EJB transport with WebSphere (Figure 2-3 on page 17):

-Dcom.ibm.CORBA.ConfigURL=<WebSphereHome>\properties\sas.client.prop s -Djava.ext.dirs=<WebSphereHome>\java\jre\lib\ext;<WebSphereHome>\lib ;<WebSphereHome>\plugins -Djava.security.auth.login.config=c:\Program Files\FileNet\CEClient\config\samples\jaas.conf.WebSphere

Figure 2-3 Eclipse runtime configuration for WebSphere EJB transport JVM parameters

In sas.client.props, set the following properties (see Figure 2-4): com.ibm.CORBA.securityServerHost=ceServerName

com.ibm.CORBA.securityServerPort=2809 com.ibm.CORBA.loginSource=none

Figure 2-4 Sample WebSphere sas.client.props entries

򐂰 For EJB transport with Weblogic:

-Djava.naming.factory.initial=weblogic.jndi.WLInitialContextFactory -Djava.naming.provider.url=t3://ceServer:7001

-Djava.security.auth.login.config=c:\Program

Files\FileNet\CEClient\config\samples\jaas.conf.WebLogic

Note: The CE server host name you use in your connection URI and the

sas.client.props must be resolvable through DNS from your client machine. For WebSphere, the host name and port specified in your client application must match the host name and port number specified in the

BOOTSTRAP_ADDRESS parameter in the WebSphere Administration Console.

򐂰 For EJB transport with JBoss: -Djava.naming.factory.initial=org.jnp.interfaces.NamingContextFactory -Djava.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces -Djava.naming.provider.url=jnp://ceServer:1099 -Djava.security.auth.login.config=c:\Program Files\FileNet\CEClient\config\samples\jaas.conf.JBoss

Note that the port numbers assume default application server ports. Change them as needed for your specific environments.

Thick client CEWS transport requirements

The CEWS transport does not require the client application and CE server to be on the same application server libraries. The CEWS transport is independent of the CE application server so the following instructions can be followed on any CEWS transport client.

For CE 4.0 to 4.5.0, the Systinet libraries and configuration files are installed with the CE Client installation (default installation directory is c:\Program

Files\FileNet\CEClient\wsi). Table 2-2 lists the required .jar files.

Table 2-2 Thick client CEWS transport library requirements for CE 4.0 to 4.5.0

Figure 2-5 on page 19 shows the CEWS installation directory where wasp.jar can be obtained.

Note: For the CEWS transport in a thick client environment, the requirements

are slightly different depending on which version of CE you are using. From CE 4.0 to 4.5.0, CE Java API utilized Systinet WASPJ libraries for

communication with the CE server. Starting with CE 4.5.1, Systinet libraries are no longer used. We describe both configurations.

Application server Required .jar files

Applies to all application servers

򐂰 wasp.jar

This file can be obtained from the c:\Program

Files\FileNet\CEClient\wsi\lib directory. The other .jar

Figure 2-5 CE 4.5.0 CEWS transport installation directory

Starting with CE 4.5.1, Systinet libraries are no longer used. Instead, three new IBM libraries are required for CEWS transport as listed in Table 2-3.

Table 2-3 Thick client CEWS transport library requirements for CE 4.5.1 and beyond

As mentioned earlier, the CEWS transport requirements are the same for any application server. For the CEWS transport in CE 4.0 to 4.5.0, two JVM parameters are required (Figure 2-6 on page 20):

򐂰 -Dwasp.location=c:\Program Files\FileNet\CEClient\wsi 򐂰 -Djava.security.auth.login.config=c:\Program

Files\FileNet\CEClient\config\samples\jaas.conf.WSI

Application server Required .jar files

Applies to all application servers

򐂰 stax-api.jar

򐂰 xlxpScanner.jar

Figure 2-6 Eclipse runtime configuration for CEWS transport JVM parameters

For the CEWS transport in CE 4.5.1 and beyond, the only JVM parameter required is the java.security.auth.login.config file, thereby eliminating the requirement to define the wasp.location parameter.

Thin client EJB transport requirements

Thin client J2EE Web applications using the EJB transport have slightly different requirements than thick client stand-alone applications because much of the application server libraries and JVM variables are already defined or available within the application server container. Thin client applications do not require explicit references to application server libraries such as the WebSphere application client, weblogic.jar, or jbossall-client.jar.

The only JVM parameter required for thin client EJB transport applications is: -Djava.security.auth.login.config=c:\Program

Files\FileNet\CEClient\config\samples\jaas.conf.AppServer

Replace AppServer with your application server such as WebSphere, WebLogic, or JBoss.

One way to troubleshoot connectivity issues is to deploy WorkplaceXT on the client application server. If WorkplaceXT can connect to CE successfully, you can then focus on configuring your custom application in the same fashion.

Thin client CEWS transport requirements

Similar to thick clients, thin clients that are using the CEWS transport do not have a requirement for homogeneous application server versions and patches. So you can have a Weblogic thin client application communicate using the CE Java API over the CEWS transport to a CE server running on WebSphere.

From CE 4.0 to 4.5.0, a thin client application that communicates over CEWS transport must copy all eight .jar files mentioned in Table 2-4 on page 22 into the custom application WAR file’s WEB-INF\lib directory. Example steps for a WebSphere thin client application are as follows:

1. Create and deploy a custom EAR file in which the WAR\WEB-INF\lib folder contains the eight .jar files in Table 2-4 on page 22.

2. In the WebSphere administration console, set the EAR and WAR classloader mode to parent last. (WebSphere 6.0 refers to this as

parent last

;

WebSphere 6.1 refers to it as

application first

).

3. Install the CE client libraries with the Client installer as mentioned previously. 4. Add the following JVM arguments by using the WebSphere administration

console and selecting server Process Definition Java Virtual Machine Generic JVM arguments:

-Dwasp.location=c:\Program Files\FileNet\CEClient\wsi -Djava.security.auth.login.config=c:\Program

Files\FileNet\CEClient\config\samples\jaas.conf.WSI

Note: You should use EJB transport with thin clients when possible. Especially

in releases prior to 4.5.1, there is a strong possibility of having classloader conflicts with application server classes. Resolving classloader issues in J2EE applications can be time-consuming and frustrating.

Table 2-4 Thin client CEWS transport library requirements for CE 4.0 to 4.5.0

For CE 4.5.1 and later, there are no requirement differences between a thick client stand-alone application and a thin client application. The three .jar files that are still required for a thin client application using CEWS transport are listed in Table 2-5.

Table 2-5 Thin client CEWS transport library requirements for CE 4.5.1 and beyond

With the 4.5.1+ implementations, the only required JVM parameter is: -Djava.security.auth.login.config=c:\Program

Files\FileNet\CEClient\config\samples\jaas.conf.WSI

2.1.4 Sample Content Engine Java API application setup in Eclipse

Related documents