AVIO Consulting

Getting Started with Oracle BPM Composer Web Forms and Process Player

Apr 29, 2013 | BPM, Oracle

In another of my blog postthis month, I gave a high level description of Oracle Business Process Composer’s Web Forms Designer and Process Player features that are new in Oracle BPM (PS6). Here are a few things that have not been documented and lessons learned that you should be aware of before trying out these features.

Edit the “hosts” file to Include the Fully Qualified Name of the Computer

Here is an error you might see when you try to invoke the new Web Forms tool from Composer:

Error getting form: <name of your form>Caused by: Could not instantiate form: got wrong status=500

First add your machine’s fully qualified name in the server’s hosts file. This file on a Windows machine is typically in the C:WindowsSystem32driversetc directory. Edit the file so that it contains: MachineName.SomeDomainName.com

If you happen to be using an Amazon EC2 instance, determine the local IP address by typing from a command prompt “IPCONFIG”. Copy the IP address that has “IPv4 Address”. Edit the hosts file so that it instead contains:

<Local IP Address for Amazon EC2 Instance MachineName.SomeDomainName.com

Use Fully Qualified URLs to Invoke Composer

When invoking Composer, most of us are in the habit of not fully qualifying the machine’s name in the URL. For example, we’ll type “https://www.avioconsulting.com/:7001/bpm/composer” to invoke Composer from a browser on the same machine that WebLogic is running or “http://MachineName:7001/bpm/composer” to invoke it when WebLogic is running on a machine named “MachineName”.

If you plan on using the Web Forms Designer feature in Composer, you now instead must fully qualify the URL with the full machine’s name when you invoke Composer (e.g. “http://MachineName.SomeDomainName.com:7001/bpm/composer”).

Set the WebLogic Domain’s “Listen Address” and “Frontend Host” Fields to the Full Name of the Machine

When creating the WebLogic domain for Oracle BPM, the “Listen Address” and “Frontend Host” fields are left blank by default. While this does not cause an issue when you’re in development normally, when using Composer’s Web Forms Designer tool these fields need to be set to the fully qualified name of the machine.

  • Backup the current config.xml file in the <WebLogic domain home directory>config directory before doing the next step.
  • In the WebLogic Administration Console expand “Environment” -> click “Servers” -> click the server’s name -> with both the “Configuration” and “General” tabs selected, enter the fully qualified name of the machine where WebLogic is running (e.g. “MachineName.SomeDomainName.com”) in the “Listen Address” field -> click “Save”.

Listen Address in WebLogic Domain

  • Next, enter this same text into the “Frontend Host” field by clicking the “Protocols” tab -> click the “HTTP” tab -> enter the fully qualified name of the machine in the “Frontend Host” field -> click “Save”. Finally, be sure to stop and restart the WebLogic domain after making these two changes.

Frontend Host setting in Weblogic Domain

After you have changed these two fields, you will no longer be able to use “localhost” in the URLs to invoke Composer, the Workspace, Enterprise Manager or the Administration Console and will instead need to use the fully qualified machine name in these URLs as well.

Process Role Names Cannot have Space or Special Characters

You may see this error when attempting to run Composer’s Process Player:

exception.70207.description: Action INITIATE on process Player/<name of the project>/<name of the process> cannot be performed by <some user name>

Although you are allowed to enter space and special characters (e.g. “_”) into the names of the roles in Composer and in Oracle BPM Studio, the role names in the process cannot have any space characters or special characters if you plan on running the process in Composer’s Process Player.

When using Process Player Use Firefox

If possible, use Firefox when using Process Player. Although Internet Explorer will work, Player does not continue past the Start event in a process unless you refresh the browser and restart Player.

Process Player Creates Instances in the Workspace Once a Project has been Deployed

If you deploy the project, you will not be able to run and test it using Process Player without first undeploying it. Although Process Player initially appears to be functioning correctly, the web forms will not appear once it has been deployed and any work item instances that are created in the Process Player are instead displayed in the Workspace’s task list and must be tested using the Workspace.

Start with a Small Project

Even though you might be testing only one process in the project, for Process Player to run the entire project must be error free. This means that if there are any Interactive activities in any process in the project that do not yet have human tasks assigned to them, they need to be marked as “Draft”. This also means that every conditional sequence flow in every process in the project has to have logic defined in it because conditional sequence flows cannot be marked as “Draft”.

If you are using an existing project, remember that the role names in the processes cannot contain space characters or special characters.

While it is tempting to take an existing project to try the Web Forms Designer and Process Player features, when getting started I suggest that you first start with a project that has a single process and only a couple Interactive activities.