Sunday, 24 December 2017

Weblogic User password Expired issue

Weblogic User password Expired

Step-1 : Check the user list and details which all are expired with the below query. 
select USERNAME,EXPIRY_DATE,LOCK_DATE,ACCOUNT_STATUS from dba_users;

Step-2 : Reset the password for the expired  users
alter user <username> identified by <new password>

Step-3 : To set make the limit of the password as unlimited  
alter profile DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

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 :)