While working with my project requirement,i reached to a point where i need to pass JNDI name dynamically from descriptor, means if the destination database change then user can change the JNDI name from soa preference of deployed process, no need for redeployment.
In composite.xml for the BPEL process I created one preference say,jndiVar like


At setJNDI I’m assigning preference value to a process variable,

Then after creating the adapter go to the BPEL source and add <bpelx:inputProperty name="jca.jndi" variable="jndiVar"/> as below,

Then deploy the process and change your preference value accordingly to point to right JNDI as below,
Farm_soa_domain > Weblogic Domain > soa_domain > right mouseclick and select ‘System MBean Browser’.
Navigate to Application Defined MBeans > oracle.soa.config > Server : soa_server1 > SCAComposite > your_project > SCAComposite.SCAComponent > your bpel_process.
Select the Attribute ‘Properties’.
Select the Attribute ‘Properties’.

Change the value of our preference,set JNDI accordingly and click apply.

it's done, Now you can manage connection factories without modifying the BPEL JCA Adapter and redeployment.
Enjoy!!!!!!!!!!!!!!!!
Comments
Post a Comment