Oracle® Application Server Release Notes 10g Release 3 (10.1.3.1.0) for Microsoft Windows B31012-02 |
|
![]() Previous |
![]() Next |
This chapter describes issues associated with Oracle BPEL Process Manager. It includes the following topics:
Section 8.1, "Installation and Deinstallation Issues and Workarounds"
Section 8.2, "Modeling and Design-Time Issues and Workarounds"
Section 8.3, "Deployment and Run-Time Issues and Workarounds"
Section 8.7, "XPath Expression Builder Issues and Workarounds"
Section 8.8, "Oracle BPEL Control and Oracle BPEL Server Issues and Workarounds"
Section 8.10, "Globalization/Multibyte Character Issues and Workarounds"
Section 8.11, "Sample Demos and Tutorials Issues and Workarounds"
This section describes the following issues and workarounds:
Section 8.1.1, "Installing Oracle Java Virtual Machine on Windows"
Section 8.1.3, "Changes to ant-orabpel.properties Required for Certain Clustering Configurations"
Section 8.1.4, "EJB URL in wf_client_config.xml Is Incorrect After Installation"
Section 8.1.6, "Error Message Can Be Ignored During BPEL Standalone Installation"
If you want to use the CodeCoach and Profiling features of Oracle JDeveloper, you must install Oracle Client Java Virtual Machine (OJVM).
The InstallOJVM
script installs OJVM in the specified JDK directory. Once installed, OJVM is the default virtual machine for every new project created in Oracle JDeveloper for the specified JDK.
Go to SOA_Oracle_Home
\integration\jdev\jdev\bin
.
Run InstallOJVM.bat
, and specify the JDK root directory. For example:
InstallOJVM C:\OraBPELPM\integration\jdev\jdk
Oracle recommends that you use the Oracle Application Server SOA Basic installation type instead of the Oracle BPEL Process Manager for Developers installation type.
For Cold Failover configurations, you must manually edit the ant-orabpel.properties
file as follows:
Find the properties http.hostname
and j2ee.hostname
in
SOA_Oracle_Home/bpel/utilities/ant-orabpel.properties
Set both http.hostname
and j2ee.hostname
to the virtual hostname.
See the chapter on active-passive topologies in Oracle Application Server High Availability Guide for more information.
Do the following to avoid a connection failure error when using the worklist client code:
Go to
SOA_Oracle_Home\bpel\system\services\config\wf_client_config.xml
Locate the entry
servicesClientConfigurations\ejb\serverURL
Make the preceding entry the same as the jndi.url
property in
SOA_Oracle_Home\bpel\utilities\ant-orabpel.properties
with /hw_services
appended to it. For example:
<serverURL>opmn:ormi://hostname:nnnnn:oc4j_soa/hw_services</serverURL>
Ensure that the following is in the classpath:
SOA_Oracle_Home\bpel\system\services\config\wf_client_config.xml
The following preinstallation steps are required for the environment in which you are using the 10.1.3.1 patch and a 10.1.3.1.0 BPEL J2EE standalone installation associated with the 10.1.2.0.2 infrastructure OID.
Note: For the following preinstallation steps to work, OID must be seeded with workflow-related users running the config tool for workflow before you restart the BPEL server. |
Shut down the instance by executing
opmnctl stopall
Back up the jazn.xml
file found at
SOA_Oracle_Home\j2ee\home\config
In the same directory, rename jazn.xml.save
nnnn
to jazn.xml
.
This is the jazn.xml
file before OID was associated with the J2EE instance.
Confirm that the contents of jazn.xml
look something like the following. In particular, note that the entries in bold are as indicated.
<?xml version = '1.0' encoding = 'UTF-8' standalone = 'yes'?> <jazn xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://xmlns.oracle.com/oracleas/schema/jazn-10 _0.xsd" schema-major-version="10" schema-minor-version="0" provider="XML" location="./system-jazn-data.xml" default-realm="jazn.com"/> "
Start the instance by executing
opmnctl startall
Install BPEL.
After completing the installation successfully, shut down the instance.
Rename jazn.xml
to the new name (to keep as a backup).
Copy back the backed up copy of LDAP jazn.xml
as the new jazn.xml
.
Start the instance.
For Oracle BPEL Control to work, follow the manual steps required for OID setup with BPEL.
You can ignore the following error messages for the environment in which you are using the 10.1.3.1 patch and a 10.1.3.1.0 BPEL J2EE standalone installation associated with the 10.1.2.0.2 infrastructure OID.
The operation is unsupported
This message appears when you type the password during installation (in the background console, from where Oracle Universal Installer was invoked).
When following the BPEL process clustering procedures in section "Task 4: Compiling and Deploying the BPEL Process" of Oracle BPEL Process Manager Installation Guide, ensure that you deploy the BPEL process to all nodes in the cluster.
The method by which you install Oracle BPEL Process Manager and Oracle Enterprise Service Bus can impact adapter endpoint activation. Review the following issues before performing an installation.
If you install the following components into the same Oracle home:
Oracle Application Server 10.1.3.0
Oracle Application Server Patch Set 10.1.3.1
Oracle BPEL Process Manager for OracleAS Middle Tier from its own 10.1.3.1 software CD
Oracle Enterprise Service Bus from its own 10.1.3.1 software CD
Or, if you install:
J2EE and Web Server advanced install type of Oracle Application Server SOA 10.1.3.1
Oracle BPEL Process Manager for OracleAS Middle Tier from its own 10.1.3.1 software CD
Oracle Enterprise Service Bus from its own 10.1.3.1 software CD
Adapter end point activation is successful for the following scenarios:
If Oracle BPEL Process Manager and Oracle Enterprise Service Bus are installed under the same default home OC4J container.
If Oracle BPEL Process Manager and Oracle Enterprise Service Bus are installed under the same container (other than the home OC4J container) and under the same default group (as that of the home OC4J container).
See Oracle Application Server Administrator's Guide for details about OC4J groups.
This section describes the following issues and workarounds:
Section 8.2.1, "Dragging a Decision Service Icon into a BPEL Diagram Activities Area"
Section 8.2.2, "Decision Service Cannot Be Edited in Oracle JDeveloper"
Section 8.2.3, "Correlation Sets in Previously Deployed Versions May Be Overwritten"
Section 8.2.4, "Change in HeaderHandler from Release 10.1.2.0.2 to Release 10.1.3.1.0"
Section 8.2.5, "Online Help for Invocation Pattern Operations in a Decide Activity"
Section 8.2.8, "Schema Names Do Not Support Multibyte Characters"
Section 8.2.8, "Schema Names Do Not Support Multibyte Characters"
As with the other services listed under Services in the Component Palette of Oracle JDeveloper, a decision service must be dragged into one of the Services swim lane. You cannot drag a service into the activities area of a BPEL diagram. However, the interface does not provide a visual indicator that you cannot drag a decision service into the activities area, except that nothing happens.
A decision service cannot be edited in Oracle JDeveloper. You must delete and re-create it.
If correlation sets are changed between process versions, then the last deployed version overrides the correlation sets in previously deployed versions. This may be an issue if you have in-flight instances of version 1, followed by a newly deployed version 2, where the correlation set has changed.
The HeaderHandler
interface from release 10.1.2.0.2 cannot be ported to the 10.1.3.1.0 environment. The following change in the method signature is required:
From this in release 10.1.2.0.2:
public void invoke(CXPartnerLink partnerLink, String operationName, Map payload, Map header, Map callProps)
To this in release 10.1.3.0.1:
public void invoke(CXPartnerLink cXPartnerLink, String string, Map map, List list, Map map1)
The Edit Decide window enables you to select the operation of the invocation pattern to perform. The operations available for selection are based on the invocation pattern you selected in the Select a Ruleset or a Function window of the Decision Service wizard. For descriptions of these operations, perform either of the following:
Click Help on the Select a Ruleset or a Function window of the Decision Service wizard and go to the Invocation Pattern section.
See the "Decide Activity" section in Chapter 18, "BPEL Process Integration with Business Rules" of Oracle BPEL Process Manager Developer's Guide.
Oracle BPEL Process Manager is not interoperable with Oracle JDeveloper-created WSIF bindings, and cannot support Java beans or XDK JAXB objects passed into Java binding services.
You can select RPC type for the SOAP and WSIF bindings options when generating a Java Web service. The resulting WSDL with Java bindings is interoperable with Oracle BPEL Process Manager. However, this works only if there are no complex type references in the Java code.
For this release, the xpath-functions.xml
file has been moved to the SOA_Oracle_Home
\bpel\system\config
directory. In addition, the console link to these functions now appears in the Oracle BPEL Admin Console (http:\\
hostname:port
\BPELAdmin
) under the XPath Library link.
When you create a BPEL process, the XSD file name does not support multibyte characters.
This section describes the following issues and workarounds:
Section 8.3.2, "Directory Reference for File Adapter Not Updating Correctly"
Section 8.3.3, "Reportees of the Topmost User in a Hierarchy Are Not Always Displayed"
Section 8.3.4, "TaskManager Is Not Listed Under Deployed Processes in Oracle BPEL Control"
Section 8.3.5, "Run-Time WSDL for a BPEL Process Has Endpoint Defined as LOCALHOST on Windows"
Section 8.3.7, "BPEL Compiler Error When No Partner Link Exists"
Section 8.3.8, "Unit Test Does Not Support Iterative Partner Invocations"
Section 8.3.9, "OBANT.SH Does Not Handle JSSO Login If the HW_Services Application is JSSO Enabled"
Section 8.3.10, "ClassCastException Error Message with 10.1.2 Application Server Connections"
Section 8.3.11, "Unique IP Address Is Needed to Create an Application Server Connection"
Section 8.3.12, "Changing IP Requires Manual Deletion of tmp Directory"
Section 8.3.14, "Starting Oracle BPEL Process Manager Through Oracle Enterprise Manager"
If the ORMI URL used for deployment in your network environment does not use the hostname, but rather uses the localhost (for example, in a DMZ network configuration), then you may see the following error:
...Missing ormi[s]://<host>:<port>
You may need to change the value of the property hostname
to the localhost, in
SOA_Oracle_Home\bpel\utilities\ant-orabpel.properties
In a BPEL process that uses multiple file adapter ports (receives), using the Update Descriptor feature of Oracle BPEL Control to change directory reference information does not update the bpel.xml
file correctly. For example, assume the file adapter uses a logical name for the directory path (rather than a physical path), and that after deploying your BPEL process, you want to change from the logical directory property value to the actual physical directory. The update process from Oracle BPEL Control adds a new property with the physical directory value, and the existing property for the logical name remains as well. At run time, the change does not take effect.
You must redeploy a BPEL process that uses multiple file adapter ports if you update directory information for the incoming files using the Update Descriptor feature of Oracle BPEL Control.
This note applies to the topmost user in any hierarchy. The user cdickens (the topmost user in the demo user community) is used in this discussion.
In the Identity lookup dialog, when you select cdickens from the Search user list and click Hierarchy, you see the message "No reportees for cdickens." This is incorrect because wfaulk reports to cdickens. However, when you select cdickens and click Reportees, wfaulk is correctly displayed.
TaskActionHandler and TaskManager should appear as deployed processes in Oracle BPEL Control. If TaskManager does not appear, do the following:
Stop Oracle BPEL Control.
Copy bpel_TaskActionHandler.jar
as follows:
From SOA_Oracle_Home
/bpel/install/extensions
To SOA_Oracle_Home
/bpel/domains/default/deploy
Restart Oracle BPEL Control.
At BPEL run time, the WSDL endpoint is specified as localhost
, as in
<soap:address location="http://localhost:9700/orabpel/default/TestUDDIService/1.0 . . .
However, if you invoke this process from a different host, then you see an error message—a generic binding fault—during invoke or a call from another process.
To eliminate the error, reset localhost
to the hostname in
SOA_Oracle_Home/bpel/system/config/collaxa-config.xml
Then redeploy the process.
You may see the following error message when you deploy an application in an environment in which OracleAS Integration InterConnect publishes a message, using the AQ adapter, and Oracle BPEL Process Manager subscribes to that message.
<2006-09-25 04:10:36,421> <ERROR> <default.collaxa.cube.engine> <DomainObserverRegistry::notify> Error while notifying observer class com.collaxa.cube.ws.soap.oc4j.BPELOC4JServlet$1 with aspect class com.collaxa.cube.engine.observer.ProcessInitAspect oracle.webservices.provider.ProviderException: No service @ {http://xmlns.oracle.com/pcbpel/adapter/ic/implement/Item/Is_Item_Available/OA I/V1}Item defined in the WSDL at oracle.j2ee.ws.server.provider.ProviderConfigImpl.getServiceName(ProviderConfigImpl.java:312) . . .
You can ignore the error message. The application deploys and the BPEL process executes successfully.
If you create an empty BPEL process and start creating a partner link by invoking a Java Web service creation wizard, then you will get a compilation error when the partner link has not yet been created.
You can do one of the following instead:
Create the Java Web service separate from and before creating the partner link. Use the Create Partner Link dialog box and the Service Explorer to get the WSDL file.
Start with a synchronous or asynchronous template and create a partner link. You can subsequently delete the client partner.
The generate unit test feature does not work correctly if the BPEL process contains invoke and receive activities in a loop.
In JSSO mode, the deployProcess
task (invoked by obant
) gets a JSSO login form to fill out as a reply from Oracle HTTP Server. The task does not handle it. The task responds that the task was successfully deployed. However, the hw_services application cannot be JSSO enabled.
In release 10.1.2, the connection manager worked in standalone mode and communicated directly with Oracle BPEL Server without establishing an application server context. Consequently, you were prompted for your username and password at deployment.In release 10.1.3.1.0, the connection manager gets username, password, URL and other information from the application server connection. Consequently, you must create an application server connection before an integration connection is built. The data stored in the application server connection is used by the connection manager to deploy business processes. Because the username and password are already known to the application server connection, the connection manager does not prompt you for a username or password at deployment.Because of this change, 10.1.2 connections are invalid in 10.1.3.1.0 and will produce a ClassCastException
error message.
In Oracle JDeveloper, when you create a connection to a 10.1.3 application server that has multiple IP addresses, the Test Connection function returns the following error message:
Error getting OC4J Process for: ... : Error connecting to OPMN (is it running?): Connection refused: connect
You must specify a unique IP address when creating a connection to the server from Oracle JDeveloper.
If you use the chgiphost
command, you must also do the following:
Stop Oracle BPEL Server.
Remove the tmp
directory, if present.
SOA_Oracle_Home/bpel/domains/domain_name/tmp/
Restart Oracle BPEL Server and redeploy all processes.
In the case of remote cloning, also follow the preceding steps.
See Oracle Application Server Administrator's Guide for information about changing the hostname or domain name of a host that contains any of the middle-tier installation types. The section "Task 8: Redeploy Oracle BPEL Process Manager Applications" describes how to remove the Oracle BPEL Process Manager tmp
directory, if it is exists in the cloned instance.
For this release, note the following:
Enterprise Manager does not show a custom BPEL page. This is now tracked tracked through OC4J.
Enterprise Manager does not show adapter metrics. This is now available in Oracle BPEL Control.
Notification parameters are updated using properties. For example, if you want to change the notification service retry default of 3 (to 5, for example), you can add the following property in SOA_Oracle_Home
/bpel\system\services\config\wf_config.xml
and restart Oracle BPEL Server.
<property name="oracle.bpel.services.notification.maxattempt" value="5" />
See the chapter on notification service in Oracle BPEL Process Manager Developer's Guide for more information.
In this release, Oracle BPEL Process Manager is an application named orabpel
that resides under the parent OC4J container instance (for example, named home
or oc4j_soa
). To restart Oracle BPEL Process Manager through Oracle Enterprise Manager 10g Application Server Control Console, you must restart either the parent OC4J container instance in which Oracle BPEL Process Manager is installed or the entire Oracle Application Server instance. This action ensures that all related applications are restarted (such as hw_services
for human workflow) and that all deployed BPEL processes display in Oracle BPEL Control.
If you only restart the orabpel
or hw_services
application, not all BPEL processes are loaded and viewable through Oracle BPEL Control.
This section describes the following issues and workarounds:
Section 8.4.2, "Deploying BPEL Projects with Workflow from Oracle JDeveloper"
Section 8.4.4, "Compilation Warning Messages That Can Be Ignored"
Section 8.4.6, "Using the Category List in Oracle BPEL Worklist Application"
Section 8.4.7, "Getting Task Details with the getWorklistTaskDetails API"
Section 8.4.9, "Using the Custom Identity Service Provider Plug-in Sample on the Middle Tier"
Section 8.4.10, "Configuring the TaskActionHandler and TaskManager Services to Support SSL"
Section 8.4.11, "Full Path Name Needed for Task Attachment Stylesheet"
Section 8.4.12, "Recovery from Internal Server Error in Worklist Application"
Section 8.4.13, "Null Pointer Error During UpdateTaskOutcomeandRoute Call"
Section 8.4.14, "Task Definition Within a Human Task Activity Is Not Created Correctly"
Section 8.4.15, "Creation Dates Are Required for the Worklist Application Productivity Reports "
Section 8.4.16, "The Worklist Application Does Not Support SSO or JSSO Authentication"
Section 8.4.17, "High CPU Usage When Using a Human Task Activity"
Section 8.4.18, "Use the Workflow Folder Context Menu (Especially for Form Generation Actions)"
Section 8.4.19, "Human Task E-Mail Notification Does Not Support Multibyte Contents"
If you want to install Oracle BPEL Process Manager on an Oracle Application Server to use an Identity Management and metadata repository, you must manually configure Oracle Internet Directory as a postinstallation step if the underlying Oracle Application Server is not configured with Identity Management.
If you are using an Oracle Application Server middle tier already configured with Identity Management, do not perform this postinstallation step; configuration is automatically performed during installation.
For example, since the Portal and Wireless middle-tier installation type requires Oracle Internet Directory, configuration is automatically performed during installation of Oracle BPEL Process Manager on this type of middle tier.
Replace the values shown in italics below with ones appropriate to your environment.
Ensure that SOA_Oracle_Home
\j2ee\OC4J_BPEL\config\jazn.xml
contains the following jazn provider
element entries:
<jazn provider="LDAP" location="ldap://host:port" default-realm="us"> <property name="ldap.user" value="cn=orcladmin"/> <property name="ldap.password" value="!welcome1"/> </jazn>
Ensure that SOA_Oracle_Home
\bpel\system\services\config\is_config.xml
contains the following provider
element entries:
<provider providerType="JAZN" name="oid"> <connection url="ldap://host:port" binddn="cn=orcladmin" password="welcome1" encrypted="false"/> </provider>
Ensure that SOA_Oracle_Home
\j2ee\OC4J_BPEL\application-deployments\hw_services\orion-application.xml
contains the following jazn provider
element entries:
<jazn provider="LDAP" location="ldap://host:port" default-realm="us" > <jazn-web-app auth-method="SSO"/> </jazn>
If the bpelportlet.ear
Web provider is to be deployed through Oracle Enterprise Manager, manually configure SOA_Oracle_Home
\j2ee\OC4J_BPEL\application-deployments
\bpelPortlet\orion-application.xml
as follows:
<jazn provider="LDAP" location="ldap://host:port" default-realm="us" > <jazn-web-app auth-method="SSO"/> </jazn>
You must deploy BPEL projects with workflow from Oracle JDeveloper. Do not use a command line tool such as obant
. JSP features such as the payload display do not work if command-line deployment is used.
Do not enter a name that includes periods in the Workflow Name field of the Workflow Pattern window of the Workflow wizard.
When you compile a BPEL process with a user task activity, you can ignore warnings similar to the following that appear in the log window of Oracle JDeveloper:
Warning(443): [Error ORABPEL-10041]: Trying to assign incompatible types [Description]: in line 443 of "C:\apr20\integration\jdev\jdev\mywork\Application1\BPELProcess4\BPELProcess4.bpel",<from> value type "{http://www.w3.org/2001/XMLSchema}anyType" is not compatible with <to> value type "{http://www.example.org}book anonymous type".
This indicates that anyType
is being assigned to an anonymous
type. These warnings can be ignored. Ensure that the return value of the from-spec
query is compatible with the to-spec
query.
If you want to delete and re-create a user task activity, perform the following steps:
Go into the diagram view of the BPEL project.
Delete the scope activity and switch activity of the user task activity. These activities were created in the project when you ran the Workflow wizard of the user task activity.
Delete the partner links.
Delete the WSDL/XSD files from the project (recommended, but not required).
Create a new user task activity in which to design the workflow.
The Category list of Oracle BPEL Worklist Application enables you to select the category of users, groups, or titles to search (Group, Reportees, and others). Note that the values of previous search results are also displayed. For example, assume that you first search on the Group category and that the results are displayed. If you next search on Reportees, then both the initial search results and the next search results are displayed. This is the expected behavior. Use Check All and Uncheck All to do a bulk select or unselect of the selections. Note that both these buttons only appear when there are two or more users in the selected list.
This issue applies only if you are still using the worklist 10.1.2 APIs.
When you get a task listing, each task object contains only summary information, and not detailed information such as payload, attachments, history, and so on. To get the details of a task, explicitly call the getWorklistTaskDetails()
API inside a loop.
Note that looping while getting task details is a resource intensive action. You typically view details one task at a time. Call this method only for the task in which you are interested. Modify your for
loop code as follows (adding one extra line to get the task details):
for (int i=0; i<tasks.size(); i++) { IWorklistTask thisTask = (IWorklistTask)tasks.get(i); if ( <condition> ) { // task matches some condition thisTask = wlSrvc.getWorklistTaskDetails(ctx, thisTask.getTaskId()); .... Form form = null; form = PayloadFormGenerator.getMappingForm(thisTask); .... } }
This issue applies only if you are still using the worklist 10.1.2 APIs.
In some cases, automated clients can perform task operations faster than Oracle BPEL Server. This can potentially result in messages being lost. While this issue is being addressed, the workaround is to add a small delay (about five seconds) between the task operations, as shown in the following example:
client.updateTask(ctx, task); Thread.sleep(5000); // sleep for 5000 milliseconds client.customTaskOperation(ctx, taskId, "DONE");
To use the custom identity service provider plug-in sample on the Oracle Application Server middle tier, you must make the following edits to the build.xml
file:
Open the SOA_Oracle_Home
\bpel\samples\hw\isplugin\db\build.xml
file.
Change line 15 from:
<pathelement location="${classpath}" />
to:
<pathelement location="${client.classpath}" />
Change line 67 from:
<sysproperty key="java.naming.provider.url" value="ormi://${hostname}"/>
to:
<sysproperty key="java.naming.provider.url" value="${jndi.url}"/>
If you configure Oracle BPEL Process Manager for Oracle Application Server Middle Tier with Secure Socket Layer (SSL) support, you must make the following changes to ensure that the TaskActionHandler and TaskManager services load correctly for BPEL processes.
Delete the .bpel_TaskManager_1.0.jar
and .bpel_TaskActionHandler_1.0.jar
directories under SOA_Oracle_Home
\bpel\domains\
domain_name
\tmp
.
Restart Oracle BPEL Server.
These steps recreate the correct service bindings and WSDL files for TaskManager and TaskActionHandler processes and make them available from HTTP/S-based endpoints.
Note: If your Oracle BPEL Process Manager installation exists as part of a BPEL cluster, you must perform these steps on each BPEL cluster node after you create a BPEL cluster. |
In the advanced settings of the Task Editor, when you browse for an XSL
file to specify for task attachment, the text field accepts the .xsl
file name, but not the full directory path. However, without the full directory path, the file is not found at run time and a parsing error occurs.
To avoid a run-time error, first copy the stylesheet to the project workflow directory where the task file is located. Then browse for the stylesheet in the Task Editor.
While working in the Worklist Application, you may need to recover from an internal server error. For example, if you are redirected to the login page, but when you relog in, you get an "Internal Server Error" message asking you to click the Back button, then do the following to recover:
Open a Web browser (Internet Explorer 6.0 or Mozilla Firefox 1.0.4.).
Go to the Worklist Application URL:
http://hostname:portnumber/integration/worklistapp/Login
hostname
is the name of the host on which Oracle BPEL Process Manager is installed
The portnumber
used at installation (typically 9700 or 8888) is noted in bpelsetupinfo.txt
, at
SOA_Oracle_Home\install\
You can also select Start, then All Programs, then Oracle - Oracle_Home, then Oracle BPEL Process Manager, and then Worklist Application.
Type the username and password, and click Login.
Continue with your transaction.
Note: This recovery also works for internal server errors after OC4J failover occurs. |
In a human workflow task, if the updateTaskOutcomeAndRoute
flag set to false and the updateTaskOutcomeAndRoute
method is called on the task, then the following null pointer error is thrown instead of displaying the appropriate error message:
[java] Error in evaluating routing slip.
[java] Error while evaluating the routing slip
@ http://hostname:portnumber/orabpel/default/wfsvc1/1.0/HumanTask1/HumanTask1.task
This routing slip is used by workflow default_wfsvc1_1.0_HumanTask1
[java] Please check the underlying exception and correct the error in the routing slip. Contact oracle support if error is not fixable.
The updateTaskOutcomeAndRoute
method is not permitted if the corresponding flag is set to false.
When you drag a human task activity into a scope activity that includes one other activity (for example, an assign), you may see that the information you supplied to create the task definition does not appear; that is, when expanded, the human task activity appears to be empty.
To get the correct results, do one of the following:
Drag an empty activity (essentially a no-op) into the scope, either above or below the activity that is already inside the scope. Then add the human task activity. You can delete the empty activity later.
Or, ensure that the human task activity is dropped into the scope first, before any other activities.
Although the interface does not indicate that a creation date is required to generate a Worklist Application productivity report, a report is not generated unless you supply a creation date.
The Worklist Application is a sample application that does not support SSO or JSSO.
To avoid exposing a non-SSO-compliant application such as the Worklist Application in a production environment, do the following:
Open the SOA_Oracle_Home
/j2ee/home/config/default-web-site.xml
file.
Comment out or delete the following line that refers to the application:
<web-app application="hw_services" name="worklistapp" load-on-startup="true" root="/integration/worklistapp" />
Restart the server.
In some cases, you may experience a high CPU usage at the database access level when using a human task activity in BPEL. This generally happens if you have a very uneven distribution of task load—say a large number of tasks were created in a short time. This affects the database index behavior. To resolve this issue, your DBA can analyze the relevant tables either periodically (once a day) or when this problem occurs, as follows:
analyze table orabpel.wftask compute statistics; analyze table orabpel.wfassignee compute statistics;
Use the workflow folder context menu. The .task
level context menus do not work.
The contents of an e-mail notification cannot contain multibyte characters.
This section describes the following issues and workarounds:
Section 8.5.1, "Some E-Mail Attachments Are Corrupted When Using ora:readFile"
Section 8.5.2, "SMS Notification Requires workPhone Attribute"
Section 8.5.3, "Notification Activity Contents Are Not Visible"
When sending attachments using ora:readFile
, .txt
and .html
e-mail attachments are corrupted in the received e-mail. No problems occur with other attachment types such as .pdf
and .doc
attachments.
The SMS notification activity does not accept the mobile
attribute of the user. Instead, use the workPhone
attribute.
If you create a notification activity (email, fax, pager, SMS, or voice) in the design view, and subsequently switch to the source view and return to the design view, then the notification activity, when expanded, appears empty. However, the details you supplied when you created the activity still exist. They appear in the source view, and the process will deploy correctly. If you are adding attachments to the email activity, for which you need to add assign statements inside the generated scope, then the contents of the scope are also not visible in the design view after switching to the source view.
To view the details of any notification or scope activity that appears empty when expanded, double-click the icon to display the activity dialog. To add attachments to an email activity, use the source view.
This section describes the following issues and workarounds:
See Section 8.10.4, "Western European Number Format Issue in Transformations" for a transformation-related issue.
When you use JNDI names for database functions such as query-database()
, lookup-table()
, or sequence-next-val()
, and try to test the map using the MapTest
utility, no output is returned. The workaround is to use a JDBC string, instead of a JNDI name.
This section describes the following issues and workarounds:
Section 8.7.2, "Some Listed XPath Expressions Are Not Appropriate for Human Task Workflow"
Section 8.7.3, "Null Pointer Error When Using a String Value in the XPath Expression Builder"
If you use the XPath Building Assistant to create an XPath expression with hyphens (for example, on the Create Copy Rule window of an assign activity), a blue line displays under the hyphenated element and an error message similar to the following appears:
(34) Message part of name xyz-pqr- xyz not found
If the hyphenated elements are nested, the XPath Building Assistant does not allow you to proceed with bpws:getVariableData()
. For example:
bpws:getVariableData('ug_in_var','users-and-groups','')
This error is most likely encountered when using the Native Format Builder wizard with the file adapter, where the element name defaults to the hyphenated name of Root-Element
.
In addition, if elements have long names that wrap such as root = "publicKeyInfrastructureCertificateAuthorities"
and element = "publicKeyInfrastructureCertificateAuthority"
, XPath expression building also fails. You receive the following error message:
"publicKeyInfrastructureCertificateAuthorities" not found
Instead, click the Expression Builder icon on the Create Copy Rule window to display the XPath Expression Builder window. This window enables you to create an expression that includes hyphens in elements and enables long names to wrap. For example, for hyphens:
bpws:getVariableData('ug_in_var','users-and-groups','/ns2:users-and-groups/ns2 :user-or-group/ns2:name')
The XPath Expression Builder does not prevent you from selecting a contextually inappropriate XPath expression. For example, if you try to use bpws:getVariableData()
within a task definition (to set early task expiration, for example), rather than the correct XPath expression, hwf:getNumberOfTaskApprovals()
, the interface allows you to proceed until you eventually get an error message such as "Failed to initialize the XPath Expression Builder."
When you use a string value in the XPath Expression Builder during a copy operation within an assign activity, the stack trace will show errors. However, the errors can be ignored. There is no loss of functionality.
This section describes the following issues and workarounds:
Section 8.8.3, "Some Oracle BPEL Control Reports Are Unavailable with Oracle Lite Database"
Section 8.8.4, "Unable to Delete a Domain or Recreate a Domain with the Same Name"
Section 8.8.5, "Error in Oracle BPEL Server Window When Reloading a BPEL Process Can Be Ignored"
Section 8.8.6, "Oracle BPEL Control Displays an Out-of-Memory Error and Oracle BPEL Server Restarts"
Section 8.8.7, "Logging In to Oracle BPEL Control Using Oracle Access Manager"
Do not use the Safari browser to access Oracle BPEL Control. This browser is not supported. See Oracle BPEL Process Manager Developer's Guide or Oracle BPEL Process Manager Installation Guide for a list of supported browsers.
Note the following issues when using Oracle BPEL Control reports:
The End Date field format in the Query section is mm/dd/yy for all languages.
Activity sensor reports show only variables of type number (for example, integer, double, decimal, and float). Nonnumeric types are not supported for this release. In addition, data is only shown for activity sensors with Evaluation Time set to All in the Create Activity Sensor window of Oracle JDeveloper.
If Albany fonts are not installed, fonts may not display properly for Asian languages in graphs (appear as squares). Albany fonts are automatically installed if you select the proper Asian language during installation.
When clicking a bar in the performance report graph, the Instances page that appears sometimes does not display the correct list of instances. This is because the service level agreement (SLA) value in decimals is rounded off to the nearest integer. For example, assume there are two instances: one completes in three seconds and the other completes in two seconds. The SLA value is 2.6 seconds. The graph displays one instance in the green portion (indicating that the SLA value was satisfied) and the other in the red portion (indicating that the SLA value was not satisfied). Clicking the red portion does not show any instances. This is because the SLA value is rounded off to three seconds and therefore becomes equal to the completion time of the first instance.
The default SLA value is shown in performance reports only when at least one instance of the business process is created.
The End Hour field is used only for hourly reports, and not daily or weekly reports. For example, if you enter 07/29/05 as the end date, 22:00 as the end hour, Weekly as the time interval, and 3 as the time interval, the report is generated between 07/08/05 and 07/29/05. Instances in any hour (even at 23:00 or 0:00) are also considered even though the end hour is 22:00. The same case exists for daily reports. Only with hourly intervals is report generation stopped at 22:00 hours.
Process and performance weekly reports are unavailable from Oracle BPEL Control if you are using Oracle Lite Database.
If you are unable to delete a domain or recreate a deleted domain with the same name in Oracle BPEL Admin Console (a message indicates the domain already exists), perform the following steps:
Go to Oracle BPEL Control.
Select the BPEL Processes tab, then select Clear WSDL Cache.
If you can ignore the following error. The class referred to is not being loaded.
***Unable to find class oracle.tip.tools.ide.pm.addin.BPELOptions. ***This object will be loaded as null.
From Oracle BPEL Control, you may see the following error message, followed by the server apparently restarting and the errors disappearing:
500 Internal Server Error java.lang.OutOfMemoryError: PermGen space" ...
Try changing the MaxPermSize
JVM parameter in opmn.xml
to a higher value, as in
<data id="java-options" value="-server -XX:MaxPermSize=128M -ms512M -mx1024M -XX:AppendRatio=3 -Djava.security.policy=$ORACLE_HOME/j2ee/oc4j_soa/config/ java2.policy -Djava.awt.headless=true -Dhttp.webdir.enable=false -D oraesb.home=/scratch/rxvenkat/soa/atsoa0701/integration/esb -Dhttp.proxySet=false -Doc4j.userThreads=true -Doracle.mdb.fastUndeploy=60 -Dorabpel.home=/scratch/rxvenkat/soa/atsoa0701/bpel -Xbootclasspath^/p:/scratch/rxvenkat/soa/atsoa0701/bpel/lib/orabpel-boot.jar -Dhttp.proxySet=false"/>
Oracle BPEL Control uses the permission grants for users and roles that are provided in system-jazn-data.xml
. If you log in to Oracle BPEL Control using Oracle Access Manager (formerly COREid), then the JAZN users and roles must be mapped to users recognized by COREid. The following example uses the OracleAS JAAS Provider Admintool to accomplish this. (The example assumes that the principal name is orcladmin
.)
% java -jar jazn.jar -grantperm oracle.security.jazn.realm.CoreIDPrincipal\ orcladmin com.evermind.server.rmi.RMIPermission login
This results in the following configuration in the system-jazn-data.xml
file.
<jazn-policy> <grant> <grantee> <principals> <principal> <class>oracle.security.jazn.realm.CoreIDPrincipal</class> <name>orcladmin</name> </principal> </principals> </grantee> ... <permissions> <permission> <class>com.evermind.server.rmi.RMIPermission</class> <name>login</name> </permission> ... </permissions> ... </grant> ... </jazn-policy>
See Oracle Containers for J2EE Security Guide for more information on Oracle Access Manager and on granting RMI permission to Oracle Access Manager principals.
To run BPEL tests, download the following Apache-licensed JAR files.
Note: You must rename the downloaded JAR files as described in these steps. |
Download xalan-j_2_7_0-bin.zip
from the recommended mirror site.
Unzip the file.
Copy unzip_dir
\xalan-j_2_7_0\
serializer.jar
to SOA_Oracle_Home
\bpel\lib\
serializer_2.7.0.jar
.
Copy unzip_dir
\xalan-j_2_7_0\
xalan.jar
to SOA_Oracle_Home
\bpel\lib\
xalan_2.7.0.jar
.
When Oracle BPEL Process Manager services are integrated and authenticated through Oracle Web Services Manager (OWSM), and an authentication or authorization error occurs in OWSM, a generic exception message is returned to the Oracle BPEL Process Manager instance. This message may not adequately describe the error.
This section describes the following issues and workarounds:
Note the following issues when using Oracle BPEL Control report portlets:
To use Oracle BPEL Control report portlets, move the uix2.jar
file from SOA_Oracle_Home
\bpel\lib
to a different directory (for example, C:\OraMidTier
\bpel\temp-lib
) and include this library path in the SOA_Oracle_Home
\j2ee\OC4J_BPEL\config\application.xml
file:
<library path="C:\OraMidTier\bpel\temp-lib"/>
If you want to map portlet parameters with page parameters in Oracle Application Server Portal, the default value for the Oracle BPEL Control report portlet page parameter Time Interval parameter must always be in capital letters (for example, DAILY, WEEKLY, or HOURLY). Mapping portlet parameters with page parameters is described in section "Step 5: Mapping Portlet Parameters with Page Parameters" of the chapter "Oracle BPEL Portlets" of the Oracle BPEL Process Manager Developer's Guide.
Note the following issues when using Oracle BPEL Worklist Application portlets:
First deploy the Oracle BPEL Portlets through dcmctl
or Enterprise Manager, and then run the following script:
/SOA_Oracle_Home/bpel/system/services/install/ant-tasks/configure_oid.sh
Next manually include the entry <jazn provider="LDAP" jaas-mode="doAsPrivileged"/>
in the following file:
SOA_Oracle_Home\j2ee\OC4J_BPEL\application-deployments\ provider-name\orion-application.xml
See the Oracle BPEL Process Manager Developer's Guide for instructions on deploying the Oracle BPEL Portlets with dcmctl
.
To use the Oracle BPEL Worklist Application portlets, move the uix2.jar
file from SOA_Oracle_Home
\bpel\lib
to a different directory (for example, C:\OraMidTier
\bpel\temp-lib
) and include this library path in the SOA_Oracle_Home
\j2ee\OC4J_BPEL\config\application.xml
file:
<library path="C:\OraMidTier\bpel\temp-lib"/>
Long strings of more than 360 characters in portlet titles are not handled properly
When specifying parameter values in the BPEL Worklist Portlet and BPEL Worklist Analysis Portlet, do not use long titles such as URL addresses in the Title field of the Display Customization sections. Long titles can disturb the portlet layout and cause the Personalize link in the upper right corner to not work.
Worklist portlet title bar does not display the first time
When you initially install Oracle Application Server Portal, register the Web provider, create an initial page group, and add the Oracle BPEL Worklist Application portlets to the page group, the title bar does not appear. This means you cannot access the Personalize link that appears in the upper right corner of the title bar. As a workaround, create a second page group and add the Oracle BPEL Worklist Application portlets to the group. This group, and all subsequent groups you create, display the title bar and the Personalize link.
All task states display in BPEL Worklist Portlet
When you select All or Previous in the Category list and Assigned in the Status list of the Task Customization sections of the BPEL Worklist Portlet, you see the state of all tasks, not just those identified as Assigned.
This section describes the following issues and workarounds:
Section 8.10.1, "Ruler Scale Is Not Multibyte-Compliant in the Native Format Builder Wizard"
Section 8.10.3, "Installing Oracle BPEL Process Manager for Traditional Chinese on Linux"
Section 8.10.4, "Western European Number Format Issue in Transformations"
If you select the fixed length file type in the Native Format Builder wizard, the ruler on the Field Lengths window that enables you to specify field length for each record is not multibyte-compliant.
The extended XPath function ora:readFile
requires a file directory path as the first parameter. These functions read the specified file by using OS-default encoding. This is not an issue if the specified file is in the local file system. However, if the specified path is a URL, the target file is not always encoded in OS-default encoding.
If you want to install Oracle BPEL Process Manager for use in Traditional Chinese on Linux, you must use zh_TW.big5
instead of zh_TW.eucTW
.
In many Western European locales such as German or French, the default decimal point is a comma (,) instead of the dot (.). In that case, the mathematical function in a transform activity, such as ADD
and SUBTRACT
, gives an output using the comma as a decimal point, although the input numbers of the function are using a dot.
To work around this issue, add a decimal-format function to overwrite the default format. The following is an example for ADDITION
.
<xsl:decimal-format name="usa" decimal-separator="."/> <xsl:template match="/"> <tns:Root-Element> <tns:Price> <tns:price1> <xsl:value-of select="/tns:Root-Element/tns:Price/tns:price1"/> </tns:price1> <tns:price2> <xsl:value-of select="/tns:Root-Element/tns:Price/tns:price2"/> </tns:price2> <tns:price3> <xsl:value-of select="format-number((/tns:Root-Element/tns:Price/tns:price1 - /tns:Root-Element/tns:Price/tns:price2), '#.00', 'usa')"/> </tns:price3> </tns:Price> </tns:Root-Element> </xsl:template>
This section describes the following issues and workarounds:
The following content is missing from the end of the readme.txt
file for the XAInsert sample, found at
SOA_Oracle_Home\bpel\samples\tutorials\122.DBAdapter\advanced\dmlInvoke\XAInsert
After "The only way to debug the instance is to switch from using an XA data source to using a non-XA data source," add the following:
However, to set-up a nontransactional data source, if you have
xADataSourceName="" dataSourceName="loc/BPELSamplesDataSource"
also configure the corresponding data source to have tx-level="local"
in data-sources.xml
, as in the following example:
<managed-data-source name="DBSamplesDataSource2" connection-pool-name="dbSample_CONNECTION_POOL2" jndi-name="jdbc/DBConnection2DataSource" tx-level="local"/>
When you deploy the BankTransferFlow or BankTransferFlowWithCompensation demos, and initiate the deployed process from Oracle BPEL Control, you may not find a BPEL instance; rather, the process may appear as a recoverable process. The process was rolled back because the partner link is marked as participating in an XA transaction. Therefore, this is the correct behavior.
After executing the BankTransferFlow and BankTransferFlowWithCompensation demos, no audit trail is available from the Oracle BPEL Control Audit link.
The following error message appears:
Workitem binary deserialization failed. An attempt to deserialize the workitem "40015-BpAss5-BpSeq3.3-5" from binary format failed. The exception reported is: Scope not found. The scope "BpSeq3.3" has not been defined in the current instance.
This section describes the following issues and workarounds:
The following option is not supported in release 10.1.3.1.0 and beyond:
oracle.bpel.services.workflow.query.ITaskQueryService.ASSIGNMENT_FILTER_ALL
The Java documentation lists ASSIGNMENT_FILTER_ALL
as one of the filters, but the service does not support this filter.
To fetch all tasks that you can view, you must fetch tasks using each of the applicable filter options repeatedly; for example, use ASSIGNMENT_FILTER_MY_AND_GROUP
, then ASSIGNMENT_FILTER_REPORTEES
, then ASSIGNMENT_FILTER_CREATOR
, then ASSIGNMENT_FILTER_OWNER
, and so on.
The Java documentation for the following method is incorrect:
oracle.bpel.services.workflow.query.ITaskQueryService.queryViewTasks
Incorrect second argument:
oracle.bpel.services.workflow.user.model.UserViewDetailType userViewDetail
Correct second argument:
java.lang.String viewId
The viewId
is the ID of the view for which the tasks need to be retrieved.