Contents


Creating a stand-alone Process Center profile in IBM BPM, Part 1

Configure a profile for IBM Business Process Manager V8.5 on Windows platforms

Comments

Content series:

This content is part # of # in the series: Creating a stand-alone Process Center profile in IBM BPM, Part 1

Stay tuned for additional content in this series.

This content is part of the series:Creating a stand-alone Process Center profile in IBM BPM, Part 1

Stay tuned for additional content in this series.

Prior to version 8.5, IBM BPM supported a stand-alone Process Center profile, and it was provided as part of the typical installation option. In IBM BPM V8.5 Standard and Advanced, a typical installation now creates a single cluster network deployment Process Center profile. The stand-alone profile is now only provided with the IBM Integration Designer unit test environment installation and with IBM BPM Express.

All other installations create a network deployment environment. A network deployment environment is the only supported option for production environments because it provides additional features such as capacity, availability, scalability, and failover support. For developers using Integration Designer, this means that it is no longer possible to use any server installation other than the unit test environment server for testing SCA modules, unless they are contained in process applications.

Therefore, in cases where you want to have a local Process Center, several profiles are necessary: one for the unit test environment and three for the Process Center. For developers that are working remotely with a memory restricted laptop as their only resource, the number of Java™ processes running can be a problem.

A solution to this problem is to have a single profile that functions as both the Process Center server and as a unit test environment server. This facilitates product evaluation and supports an isolated single user development environment.

This series describes how to create and use a stand-alone Process Center profile for IBM BPM Advanced and IBM BPM Standard. This Part 1 addresses IBM BPM on a Windows environment. Part 2 addresses a Linux environment.

Note: A stand-alone Process Center profile, although fully functional, is not officially supported.

What are the advantages of a stand-alone Process Center profile?

As we will show in detail in the following sections, a stand-alone Process Center profile can solve both issues presented earlier. With a single profile and single Java process, a developer can use the Process Center and can deploy and test SCA modules without the need to wrap them in a process application.

Smaller memory footprint

A stand-alone Process Center profile provides several advantages to developers. The most obvious is that it has a significantly smaller memory footprint, making it feasible to run on less powerful laptops. As we mentioned, a network deployment Process Center has at least three Java processes running, as shown in Figure 1.

Figure 1. Three JVMs in the Network Deployment Process Center profile
Three JVMs in the Network                     Deployment Process Center profile
Three JVMs in the Network Deployment Process Center profile

As shown in Figure 2, a stand-alone profile's memory requirements can be significantly smaller because only one Java process is required.

Figure 2. One JVM in the stand-alone Process Center profile
One JVM in the stand-alone Process                     Center profile
One JVM in the stand-alone Process Center profile

Access to Process Center and Integration Designer unit test environment in a single profile

Developers that use IBM BPM Advanced may be required to develop modules using Integration Designer. Prior to version 8.5, if the Process Center was installed with a stand-alone profile, then it was possible for Integration Designer to use the Process Center server as an IBM unit test environment server. If it was installed with a network deployment profile, then it was not possible to deploy SCA modules. This is because the server tooling that enables deployment of JEE applications (which is what SCA modules are deployed as) only supports a stand-alone profile.

Starting with version 8.5, the Process Center is installed with a network deployment profile. This means that to test SCA modules, the unit test environment server had to be installed. This further added to the memory and disk footprint if the Process Center was also installed as well. Of course, you can test SCA modules without the unit test environment if they were added to a process application and published to the Process Center. However, using a process application to temporarily hold SCA modules can be an inconvenience when their lifecycle is not tied to the Process Center.

In the next sections, we'll look in more depth at why you would want a unit test environment in addition to the Process Center.

Server tools

Access to a unit test environment server enables Integration Designer's server tools to provide an initial one-click deployment of SCA modules and subsequent rapid incremental deploy when code changes are made (see Figure 3).

Figure 3. Integration Designer server tools support incremental deployments
Integration Designer server tools                     support incremental deployments
Integration Designer server tools support incremental deployments

Integration test client

The integration test client is a unit test and debug tool (see Figure 4). You can use it for rapid unit testing of SCA modules and individual SCA components. You can examine an element of a component interface at runtime: input, output, and faults. Also, the integration test client shows the path taken through business processes and mediation flows as well as the values of internal variables at each point. It can also emulate components that are not ready or available for testing; for example, imports with end points that are not accessible in the developer's environment.

Figure 4. Integration test client supports unit testing
Integration test client supports unit                     testing
Integration test client supports unit testing

Component test suite container

The test suite editor and associated wizards allow you to create and define test cases (see Figure 5). This enables sequential testing of multiple operations as a group using the integration test client. Test suites can also be run in automated batch mode. This enables you to perform more complex unit tests that involve predefined data and other components.

Figure 5. Automated component test tools
Automated component test                     tools
Automated component test tools

Creating a stand-alone Process Center profile

This section describes how to enable the stand-alone Process Center profile for IBM BPM Advanced. This means there is a single stand-alone Process Center Profile to which Integration Designer can connect to deploy, test, and debug code.

Install IBM BPM Advanced V8.5

Run the IBM BPM Advanced V8.5 installer and select the Custom installation option as shown in Figure 6. This option only installs the IBM BPM binaries. It does not create any profiles.

Figure 6. Install IBM BPM Advanced using the custom installation option
Install IBM BPM Advanced using the                     custom installation option
Install IBM BPM Advanced using the custom installation option

Step 1: Configure the BPMConfig.properties file

Use the provided properties file in the Download section of the article, 8501StandalonePC.zip, and make changes to each of the properties that are described below. Change each property's value from "XXXX" to the values that are applicable to your installation.

  1. Set the deployment environment administrator user name and password that you want to use.
    bpm.de.authenticationAlias.1.user=XXXX
    bpm.de.authenticationAlias.1.password=XXXX
  2. Set the user name and password for BPM_DB_ALIAS. This is the user name and password that was set when DB2® Express was installed during the IBM BPM installation, or for the DB2 instance that you want to use.
    bpm.de.authenticationAlias.3.user=XXXX
    bpm.de.authenticationAlias.3.password=XXXX
  3. Set all the instances of the authentication alias association to the same user name as set in the previous step.
    bpm.de.db.1.schema=XXXX
    bpm.de.db.2.schema=XXXX
    bpm.de.db.3.schema=XXXX
    bpm.de.db.4.schema=XXXX
  4. Set the server hostname to the hostname of the computer that the server is installed on. Note that a good practice is to not use "localhost" for a server hostname because if you ever try to connect remotely to it from an Integration Designer installed on another computer, there can be publishing and connectivity problems.
    bpm.de.node.1.hostname=XXXX
  5. Set the IBM BPM Process Center installation path (for example, the default installation location is C:/IBM/BPM/v8.5):
    bpm.de.node.1.installPath=XXXX
  6. Optionally, edit the database hostname and port numbers if necessary. For most users, the default would remain as localhost, port 50000.

Save and close the 8501StandalonePC.properties file.

Step 2: Disable the validation

Locate <install_root>/profileTemplates/BPM/BpmServer/actionRegistry.xml. Open it and comment out the following line:

<!-- validator path="../BpmDmgr/validators/productTypeValidator.ijc"/ -->

Save and close the actionRegistry.xml file.

Step 3: Create the stand-alone Process Center profile

Run the BPMConfig command located in the <install_root>/bin directory:

BPMConfig -create –de 8501StandalonePC.properties

Note the above code snippet assumes that the properties file resides in <install_root>/bin. You can include the full path if it is not at that location.

To verify that the stand-alone Process Center profile was created, check the IBM BPM server location under the Profiles folder for a folder named "qbpmaps".

Using the stand-alone Process Server in Integration Designer

Now that you have created the stand-alone Process Center profile, you can use the Process Server with Integration Designer after you create a Process Server instance in the Servers view.

  1. To do so, in the Servers view, launch the new server wizard by clicking on the new server wizard link as shown in Figure 7.
    Figure 7. Launch the New Server wizard
    Launch the New Server wizard
    Launch the New Server wizard
  2. In the New Server wizard, select the type of server you want to create. In this case, select IBM Process Server v8.5 as shown in Figure 8. You can leave the other fields as they are.
    Figure 8. Specify the server type
    Specify the server type
    Specify the server type
  3. Next, specify the WebSphere® installation root directory as shown in Figure 9. You need to edit the installation directory to match your local IBM BPM server installation.
    Figure 9. Specify the WebSphere installation root directory
    Specify the WebSphere installation root                     directory
    Specify the WebSphere installation root directory
  4. Finally, enter the admin user ID and password as shown in Figure 10. These are the values you specified in the BPMConfig.properties file.
    Figure 10. Specify WebSphere admin user credentials
    Specify WebSphere admin user credentials
    Specify WebSphere admin user credentials

    In the Servers view, you now see a Process Server server as shown in Figure 11.

    Figure 11. Process Server server in the Servers view
    Process Server server in the Servers view
    Process Server server in the Servers view

Test the server

In the server, right-click on the Process Server you just created and from the pop-up menu, select Add and Remove as shown in Figure 12.

Figure 12. Deploy a test application to Process Server
Deploy a test application to Process Server
Deploy a test application to Process Server

Assuming you have a module in your workspace, add the module to the list of applications to be deployed and click Finish. After few seconds, you now see your application deployed to Process Server as shown in Figure 13.

Figure 13. Test application deployed to Process Server
Test application deployed to Process Server
Test application deployed to Process Server

Conclusion

A stand-alone Process Center profile is useful for situations where memory and disk space are limited. Rather than install the Process Center as a network deployment environment with at least three profiles running, plus an additional profile to support the unit test environment server, you learned how a single profile can provide both a Process Center Server and a unit test environment server.

If you are using a Linux environment, see Part 2 of this series.

Acknowledgments

The authors would like to thank Erich Fussi from the IBM Boeblingen Lab development team for providing the technical details, and Brian Petrini from the BPM Product management team for his leadership and support.


Downloadable resources


Related topics


Comments

Sign in or register to add and subscribe to comments.

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Business process management
ArticleID=976072
ArticleTitle=Creating a stand-alone Process Center profile in IBM BPM, Part 1: Configure a profile for IBM Business Process Manager V8.5 on Windows platforms
publish-date=06302014