Monday, August 8, 2011
Sunday, August 8, 2010
Wednesday, February 10, 2010
Oracle SOA suite 11g - Get Instance Title for Composites and Components
Composite instance title:- ora:setCompositeInstanceTitle() method can be used to set the composite instance title.
The composite instance title can be used to search the composite instances from em console but the wildcard search is not applicable on this field.
Problem – There is no method provided to get the composite instance tile.We are only having the option to set the composite instance title using setCompositeInstanceTitle() method but no option to get the title.
Solution:- We can query the COMPOSITE_INSTANCE table under the SOA under SOA_INFRA schema.
We can use set string instanceId using method "ora:getCompositeInstanceId()" under any assign activity as below to query with COMPOSITE_INSTANCE table.
Once we have instanceId available then we can add Database adapter named "DBGetCompositeDeatils".
Define the name database JNDI name define under weblogic deployment :
Select the option "Perform an operation on a table" and "select" query:
Import the COMPOSITE_INSTANCE table from SOA_INFRA schema.
Select "Title" from this table as this filed have title ,saved by ora:setCompositeInstanceTitle() method.
Add the InstanceID as an parameter ,make sure that you set InstanceID before calling the database adapter. The below mention query will get the title from COMPOSITE_INSTANCE table by passing the InstanceID and now set title is available for use.
Monday, February 8, 2010
Customizing BPEL Process Instance Titles
When there were several BPEL process instances getting created in the BPEL console, it often really becomes hard to identify a instance for tracking/debugging purposes. Since, all the BPEL process instances use a generic naming convention consisting of an unique instance id (sequence generated within Oracle BPEL PM) and the BPEL process name; all instances would hold the same name except for the change in instance id.
In order to give a valid instance name for the BPEL processes, you can make use of the setTitle(String str1); method inside a Java Embedding activity inside the BPEL process, which will ensure that the 'str1' parameter is set as the instance title for all instances created for this BPEL process. You can pass dynamic run-time parameters and customize the BPEL instance titles, so that the BPEL instances can be identified more uniquely in a business sense. This also enables easy & effective instance tracking from the BPEL console.
Saturday, August 8, 2009
Best Practices with BEA Products
- In normal conditions use DSP for read services and WLI for database writes for WLI Server versions till 9.2. For cases where we have weblogic 10.3 app servers we can use DSP as the data services layer for both reads and writes.
- Avoid 8.1, 9.2 and 10.3 Interoperability Issues by generating the WSDL in 10.3 if you are using all three platforms. In cases of any mixed usage always create the wsdl with the higer version of the platform being used.
- Use BARE annotation in your web services so that you do not need the WSDL for types jar and only the XSD files.
- Do not use DBControl as a DataSource. Close connections if you do a getConnection. Furthermore we shouldnt write java type code for accessing databases through WLI. Use the inbuilt DB Controls for the purpose which supports almost all databases.
- All WSDLs should have a return parameter that indicates the SUCCESS or FAILURE of the call. Failure messages should be displayed on the user screen.
- Data not found should not be displayed if system errors have occurred in reading or writing data.
- While using portals or pageflows remove any empty catch blocks in the Front end.
- In BPM, please do not write much code in commit action or the prepare action. Keep it as minimal as possible.
- Exception occurred is not enough of a message. Please log the actual exception on the screen in a pretty format.
- Redirect 500, 404 to meaningful pages.
- Use XA datasources if your transaction spawns multiple datasources. XA is there for a reason.