Friday, 10 October 2014

DB Adapter Wizard Issue After Exporting The SAR

Sometimes after export the BPEL SAR file from EM Console, if we try to open the DB adapter wizard it is not opening. We need to do the following work around to solve this,

Open the DB adapter wsdl file and add the .jca file name as mentioned below.

<?xml version='1.0' encoding='UTF-8'?>
<?binding.jca PL_INSERT_Data_db.jca?> 


Happy Coding :)

Thursday, 14 August 2014

BPEL Java Embeding Activity With Message Type Variables Manipulation

In Java Embedding activity we can deal with the BPEL variables using getVariableData() and setVariableData() methods.

For example, the below code snippet in java embedding activity get the input value of the BPEL process and concat it with a string and set the value into the output variable of BPEL.

Element input =(Element)getVariableData("inputVariable","payload","/client:process/client:input");      
Node fc= input.getFirstChild();     
String s = "Hii "+fc.getNodeValue();     
addAuditTrailEntry("Input is : " +s);     
setVariableData("outputVariable","payload","/client:processResponse/client:result", s);

In the BPEL process file go to source view and add the following import statements above the java embedding code snippet.

<bpelx:exec import="org.w3c.dom.Element"/>

<bpelx:exec import="org.w3c.dom.*"/>

Now deploy the project and test it.

Happy Coding :)

Tuesday, 15 July 2014

Fetch Number Of SOA Process Instances and Current State On Server

Execute the below query which fetch the number of process instances on the server and their current state.

SELECT 
decode (state,
         0 , 'Initiated',
         1 , 'Open and Running',
         2 , 'Open and Suspended',
         3 , 'Open and Faulted',
         4 , 'Closed and Pending',
         5 , 'Closed and Completed',
         6 , 'Closed and Faulted',
         7 , 'Closed and Cancelled',
         8 , 'Closed and Aborted',
         9 , 'Closed and Stale',
         'Unknown') "Process State",
COUNT (*) "Number Of Processes"
FROM dev_soainfra.cube_instance
WHERE creation_date < sysdate  AND creation_date > (sysdate-100)
GROUP BY state;

Output :











Happy Coding :)

Monday, 14 July 2014

Multiple End Point URI Set On partner Link

We can use endPointURI proporty to set multiple end points for a partner link. In case of any fail over of a uri it will invoke the other one. If all the endPOintURIs fail then default uri which is mentioned with wsdlLocation in the Reference tag will invoke.

For Example : 

Create a synchronous BPEL process and deploy it with 3 different versions which have return different output messages. Create another synchronous bpel process to test the multiple endpointURI. In the composite of this process create a partner link and set it with a BPEL process rev1.0. Go to source mode and add multiple endpointURI proporties in the reference tag. Follwo the below code snipet.

 <reference name="invkHelloworld"
             ui:wsdlLocation="http://localhost:8001/soa-infra/services/TESTING/HelloWorld!1.0/BPELProcess1.wsdl">
    <interface.wsdl         interface="http://xmlns.oracle.com/SOADemo/HelloWorld/BPELProcess1#wsdl.interface(BPELProcess1)"/>
    <binding.ws port="http://xmlns.oracle.com/SOADemo/HelloWorld/BPELProcess1#wsdl.endpoint(bpelprocess1_client_ep/BPELProcess1_pt)"
                location="http://localhoste:8001/soa-infra/services/TESTING/HelloWorld!1.0/bpelprocess1_client_ep?WSDL"
                soapVersion="1.1">
      <property name="endpointURI"> http://localhost:8001/soa-infra/services/TESTING/HelloWorld!2.0/bpelprocess1_client_ep?WSDL </property>
      <property name="endpointURI">http://localhost:8001/soa-infra/services/TESTING/HelloWorld!3.0/bpelprocess1_client_ep?WSDL</property>
      <property name="weblogic.wsee.wsat.transaction.flowOption"
                type="xs:string" many="false">WSDLDriven</property>
    </binding.ws>
  </reference>

Deploy and test the code. Check the following outputs

  • It will invoke the HelloWorld rev 3.0 by default if all the services are up.
  • If HelloWorld rev 3.0 is down then it invokes previous end point uri.
  • If all the end points are dow then it invokes default uri which is mentioned in location tag of <binding.ws>


Happy Coding :)



Wednesday, 9 July 2014

Create BAM Data Object Depending External DataBase Table

We can create a BAM Data Object bsed on a Data base Table structure. This data Object has all the data which are persist in the underlying data base table. We can link this table to BAM Data object through External Data Sources.

Follow the below steps

  • Login the BAM home -- Architect tab
  • Choose External Data Sources from the pop list top left corner. Click on Create link.












  • Give name, user, pasword, connection string of the Data source.


















  • Now create a BAM Data Object. On the screen choose the External Data Object check box.
  • Then choose the above created data source. It will populate all the tables present in the corresponding data base schema.
  • Choose the underlying table.

























  • Now add fields to the data Object one by one or we can also add all the fields at a time(it creates these field by mapping corresponding table columns).
  • Now click on Create Data Object.















  • Now Click on the created BAM Data Object and click on the contents link. It has all the values of the underlying table. Any data manipulation on the undelying table has also change the value of this BAM Data object automatically.












Also Check :



Give your comments on this post. Happy Coding :)