The Process Engine distribution includes supporting files for a Process development environment. The supporting files consist of a set of JAR files containing the supporting interfaces for Process application development, and a set of sample files illustrating common uses. These supporting and sample files are located on the P8 Platform Documentation CD or ESD image in:
ecm_help\developer_help\process_java_api\Developer Files
The supporting files supplied in the Developer Files directory are:
Contains the Process Engine Java™ API runtime classes.
Contains Process Engine resource files (such as, exception and string files).
Contains third-party classes used by the Process Engine.
Contains the Java Step Processor UI Toolkit classes. This Toolkit contains a panel set of Swing-based interfaces, support classes, JavaBeans, and related information classes. The Toolkit classes are used to provide user interface controls for the Java Step Processor samples. See Java Step Processor UI Toolkit Overview for more information.
(For FileNet Image Manager only.) Contains Process Engine Java API runtime and related classes.
Note: The JiGlue files, jiglue.dll and jiglue.tlb, are also supplied in the Developer Files directory. These files provide the JiGlue COM Bridge: a translation layer between the Process Engine Java APIs and COM. JiGlue is required for all COM or ASP/ASP.NET development. See Developing with the JiGlue COM Bridge for more information.
Additional JAR files for Process Engine application development are located on either the Application Engine, Content Engine, or Process Engine host:
Contains the Content Engine Java API runtime classes. This JAR file is located on the Application Engine host in filenet_installation_directory\WorkPlace\download.
The Process Engine uses the Content Engine Java API for LDAP directory access and authentication. Refer to the Getting Started information for the Content Engine API for JAR file information. Alternatively, you can install the Content Engine Java API.
Contains API classes for Content Engine operations used with the Component Manager. This JAR file is located on the Application Engine host in filenet_installation_directory\WorkPlace\WEB-INF\lib.
The Xerces Java XML parser. This JAR file is located on the Process Engine host in filenet_installation_directory\AE\Router\lib.
The Java Authentication and Authorization Service (JAAS). This is used for component authentication and authorization. This JAR file is contained in J2EE.jar.
The Process Java API sample sets supplied in the Developer Files directory are as follows:
Java API files that you can use to create, launch, and complete a workflow, as well as displaying and saving log information. MainSample.java is a simple workflow processing application that demonstrates how the API sample classes are related. These files are located in the Directory Files\samples\api directory.
Step Processor and Launch Step Processor sample applications, along with the image files needed for the default user interface. These files are located in the Directory Files\samples\vwpanel directory.
A Java class that allows you to view or remove entries from the Java™ Remote Method Invocation registry. These files are located in the Directory Files\samples\utils directory.
For more information about the Process Java API samples, see Process API Samples Overview.
In addition to the Process Engine developer files, the Web Application Toolkit provides an extensible framework with reusable modules for building event-driven, Java™ Server Pages-based Web applications for the FileNet P8 platform. Building HTML Step Processors is one example of how you might use this toolkit. The Web Application Toolkit is installed as part of the Application Engine installation. A number of FileNet applications (including Workplace itself) were built using this framework.
For additional information see Web Application Toolkit. See also the Web Application Toolkit Sample. To download this sample from the IBM support page, see Accessing IBM FileNet Documentation.
To configure your Process development environment:
The JiGlue COM Bridge is supplied via the jiglue.dll and jiglue.tlb files located in the Developer Files directory. These jiglue.* files, pe.jar, wcm.jar, pw.jar, pe3pt.jar and peResources.jar must be located in the same directory. See Configuring JiGlue for more information.
For installation and configuration information, refer to your FileNet Web Services documentation.
For installation and configuration information, refer to your FileNet Open Client documentation.
For installation instructions, see the topic Install Process Java Applets Connectivity in the IBM FileNet Image Manager Process Installation Guide. To download this guide from the IBM support page, see Accessing IBM FileNet Documentation. For information about PJAC, see Process Java Applets Connectivity (PJAC).
See IBM FileNet P8 Platform Hardware and Software Requirements for the current, supported version of the JDK for your platform. To download this guide from the IBM support page, see Accessing IBM FileNet Documentation.
Install the supported version of the JDK on your development system and add the installation path to your PATH variable:
Note: If you are planning to develop Process Java applications for FileNet Open Client with the JiGlue COM Bridge, you must install the JDK in the default directory.
For the EJB transport, you should start one Component Manager for each queue, using either Process Task Manager's Queues field in the Advanced tab, or the command line (see Starting and Stopping a Component Manager Instance).
See also, WebSphere Configuration for EJB Transport and Weblogic Configuration for EJB Transport.
When using WebSphere, the following scenarios require configuration changes for Component Integrator:
In this case, see WebSphere Configuration for Web Services below.
In this case, see WebSphere Configuration for EJB Transport below.
In this case, create multiple instances of Component Manager using different queue names (for example, queues=WSRequest, or queues=JMSQueue). See Starting and Stopping a Component Manager Instance for more information. See also WebSphere Configuration below, for JMS adapter information.
Component Manager is configured to use the Web services transport by default. Do the following:
client_installation_directory/properties/sas.client.props;
where client_installation_directory is the installation directory for IBM Application Client for WebSphere Application Server.
com.ibm.CORBA.loginSource
to "none".com.ibm.websphere.naming.WsnInitialContextFactory
client_installation_directory\java\bin
where client_installation_directory is the installation directory for IBM Application Client for WebSphere Application Server.
filenet.naming.provider.url=iiop://JMSServer:JMSServerBootstrap com.ibm.CORBA.ConfigURL=client_installation_directory/properties/sas.client.props com.ibm.SSL.ConfigURL=client_installation_directory/properties/ssl.client.props java.ext.dirs=client_installation_directory/java/jre/lib/ext; client_installation_directory/lib; client_installation_directory/plugins; client_installation_directory/lib/WMQ/java/lib
JMSLoginContext { filenet.vw.server.VWLoginModule required; };
To configure WebSphere for EJB, do the following:
client_installation_directory/properties/sas.client.props;
where client_installation_directory is the installation directory for IBM Application Client for WebSphere Application Server.
com.ibm.CORBA.loginSource
to "none".iiop://CEHost:CEBootstrapPort
where CEHost is the Content Engine host and CEBootstrapPort is the bootstrap port number assigned in the file serverindex.xml for the Content Engine profile (located in the directory websphere_installation_directory\profiles\profileName\config).
com.ibm.websphere.naming.WsnInitialContextFactory
client_installation_directory\java\bin
where client_installation_directory is the installation directory for IBM Application Client for WebSphere Application Server.
filenet.naming.provider.url=iiop://JMSServer:JMSServerBootstrap com.ibm.CORBA.ConfigURL=client_installation_directory/properties/sas.client.props com.ibm.SSL.ConfigURL=client_installation_directory/properties/ssl.client.props java.ext.dirs=client_installation_directory/java/jre/lib/ext; client_installation_directory/lib; client_installation_directory/plugins; client_installation_directory/lib/WMQ/java/lib
FileNetP8 { com.ibm.ws.security.common.auth.module.proxy.WSLoginModuleProxy required delegate=com.ibm.ws.security.common.auth.module.WSLoginModuleImpl; };
JMSLoginContext { filenet.vw.server.VWLoginModule required; };
java.security.auth.login.config = installation_directory/FileNet/AE/Router/ taskman.login.config.websphere
Use Process Task Manager to configure Component Manager to use the EJB transport for WebLogic. See Configure Component Manager for more information. Do the following:
weblogic.jndi.WLInitialContextFactory
-Djava.naming.provider.url=t3://host:port
For WebLogic 9.x, set the preferred JRE bin path to that installed by WebLogic. For example:
c:\bea\jrockit90_150_04\bin
FileNetP8 { weblogic.security.auth.login.UsernamePasswordLoginModule required debug=false; };
When using JBoss as the application server, the Process Task Manager's Java™ Runtime Environment parameter needs to be set as follows:
-Djava.naming.provider.url=jnp://host:port
VWAdaptor::run() exception: javax.naming.CommunicationException: Receive timed out [Root exception is java.net.SocketTimeoutException: Receive timed out]
Adding the JAR files to the system classpath can cause security conflicts when attempting to run the out-of-the-box Java client applications on your development machine. The conflict is caused when, for example, the Process Engine server sends the correct path for pe.jar, but the classpath statement forces the client application to use pe.jar file from the specified location.
If you run the Java Plugin console on a machine on which you are attempting to run the out-of-the-box Java client application with the JAR files specified in the classpath, you will receive exceptions similar to the following:
java.security.AccessControlException: access denied (java.lang.RuntimePermission modifyThreadGroup) at java.security.AccessControlContext.checkPermission(Unknown Source) at java.security.AccessController.checkPermission(Unknown Source) at java.lang.SecurityManager.checkPermission(Unknown Source) . . .
Use any one of the following workarounds to correct this behavior: