Saturday, October 4, 2008

How to invoke a BPEL Process from a Remote OC4J in SOA Suite?

Step 1:
Create a Shared Library in the Remote OC4J by name BPEL & add the following archives
$ORACLE_HOME/bpel/lib/ant_1.6.5.jar
$ORACLE_HOME/bpel/lib/bicmn.jar
$ORACLE_HOME/bpel/lib/bipres.jar
$ORACLE_HOME/bpel/lib/bpm-infra.jar
$ORACLE_HOME/bpel/lib/connector15.jar
$ORACLE_HOME/bpel/lib/orabpel.jar
$ORACLE_HOME/bpel/lib/orabpel-ant.jar
$ORACLE_HOME/bpel/lib/orabpel-common.jar
$ORACLE_HOME/bpel/lib/orabpel-exts.jar
$ORACLE_HOME/bpel/lib/orabpel-thirdparty.jar
$ORACLE_HOME/bpel/lib/oracle_http_client.jar
$ORACLE_HOME/bpel/registry/lib/builtin_serialization.jar
$ORACLE_HOME/bpel/registry/lib/core_services_client.jar
$ORACLE_HOME/bpel/registry/lib/jaxm.jar
$ORACLE_HOME/bpel/registry/lib/jaxrpc.jar
$ORACLE_HOME/bpel/registry/lib/saaj.jar
$ORACLE_HOME/bpel/registry/lib/uddiclient_api_v3.jar
$ORACLE_HOME/bpel/registry/lib/uddiclient_core.jar
$ORACLE_HOME/bpel/registry/lib/wasp.jar
$ORACLE_HOME/bpel/system/classes/
$ORACLE_HOME/bpel/system/services/config/
$ORACLE_HOME/bpel/system/services/lib/bpm-services.jar
$ORACLE_HOME/bpel/system/services/lib/fndctx.jar
$ORACLE_HOME/bpel/system/services/lib/phaos.jar
$ORACLE_HOME/bpel/system/services/lib/pushapi.jar
$ORACLE_HOME/bpel/system/services/lib/wdk.jar
$ORACLE_HOME/bpel/system/services/lib/wfapi.jar
$ORACLE_HOME/bpel/system/services/schema/
$ORACLE_HOME/integration/esb/lib/bpm-ide-common.jar
$ORACLE_HOME/integration/esb/lib/ide.jar
$ORACLE_HOME/integration/esb/lib/javatools.jar
$ORACLE_HOME/integration/esb/lib/oraesb.jar
$ORACLE_HOME/integration/esb/lib/xmleditor.jar
$ORACLE_HOME/jdk/lib/tools.jar
$ORACLE_HOME/jlib/javax-ssl-1_1.jar
$ORACLE_HOME/jlib/jewt4.jar
$ORACLE_HOME/jlib/jssl-1_1.jar
$ORACLE_HOME/jlib/ldapjclnt10.jar
$ORACLE_HOME/jlib/netcfg.jar
$ORACLE_HOME/jlib/regexp.jar
$ORACLE_HOME/jlib/share.jar
$ORACLE_HOME/jlib/uix2.jar
$ORACLE_HOME/rdbms/jlib/xdb.jar
$ORACLE_HOME/rules/lib/jr_dav.jar
$ORACLE_HOME/rules/lib/rl.jar
$ORACLE_HOME/rules/lib/rulesdk.jar
$ORACLE_HOME/rules/lib/webdavrc.jar
$ORACLE_HOME/webservices/lib/wsif.jar
See the diagram as shown below.

While creating a Location object while calling from JSP make sure the properties are passed with proper values. The below code snippet would be used for

Properties props = new java.util.Properties();
props.put("orabpel.platform", "ias_10g" );
props.put("java.naming.factory.initial",
"com.evermind.server.rmi.RMIInitialContextFactory" );
props.put("java.naming.provider.url",
"opmn:ormi://hostname:6004:oc4j_soa/orabpel" );
props.put("java.naming.security.principal", "oc4jadmin" );
props.put("java.naming.security.credentials", "welcome1" );
String securityCredentials = "bpel123";
String selectedDomain = "default";
Locator locator = new Locator(selectedDomain, securityCredentials, props);

Step 3:
Create the war file and deploy it in the new OC4J (OC4J_J2EE) as shown below. Provide the war file location on the disk.


Click on next. In the next screen provide the parent application as “default” and provide “Application Name” and “Context Root”.

Click next. Click on “Select Security Provider” link as shown below

Step 4:Provide Security Provider while deploying war file



In the “Security Provider” Drop down, select “Oracle Identity Management” as shown below


Press “OK” button.

Step 5: Configure Class Loading

Click on “Configure Class Loading” as shown below

No comments:

Post a Comment