Tuesday, October 30, 2007

optSoapShortcut Where is it ?

optSoapShortcut : This property instrucs bpel to make the webservice calls via saop stack or not. When BPEL invokes any partner links if the services its calling is running on the same server/domain then it avoid soap overhead and calls natively.

There may be situations that you want to invoke the services via Soap Stack, then this property helps you do just that...

Usage 1 : You can set this property in domain.xml of the bpel domain so the entire server always communicates via soap stack.

How to do it : Steps
1. Go to "YOUR_APPSERVER_HOME\bpel\domains\default\config
2. Open domain.xml with any text editor
3. Add add the following at the end just before </bpel-domain-descriptor>

<property id="optSoapShortcut">
<name>Make Calls Via Soap Stack</name>
<value>true</value>
<comment><![CDATA[
Make Calls Via Soap Stack.
<p/>
The default value is true.
]]></comment>
</property>

Usage 2 : You can set this property in bpel.xml in your bpel process for a specific partner link only that partner link invocation always happens via soap stack.

How to do it: Steps
1. Open BPEL project from Jdeveloper
2. Open bpel.xml look for "partnerLinkBinding" for the partner you are trying to invoke and add the following property tag inside.
<property name="optSoapShortcut">false</property>

for ex:

<partnerLinkBinding name="CallCreditService">
<property name="wsdlLocation">http://KBITRA-LAP:7777/orabpel/default/TestHello/TestHello?wsdl</property>
<property name="optSoapShortcut">false</property>
</partnerLinkBinding>

Now all the invocations for TestHello Partner Link goes thru the soap stack..

How to Change Transaction Timeout 10.1.3.3

Transaction Timeout allows appserver how much time that the server has to wait before it rolls back the tranactions. By Default oracle application server sets this value to "30" seconds. If you need to change this for any reason. Here are the steps.

Steps:
1. Go to "YOUR_APP_INSTALL_HOME\j2ee\\config\transacton-manager.xml
2. Look for transaction-timeout="30" and change the value of 30 to whaterver you want.

Note: This transaction timeout affects one home if you have more than one oc4j home then you have to change in all.

Getting More Info on Deployment with Verbose

Adding verbose=true to build.properties gives much more information regarding the compile/deploy process of soa projects. Just add "verbose=true" to your build.properties and deploy your process. While Deploying goto "Apache Ant" Log Window and see much more information being written to the log.

Steps :
1. Goto Your BPEL Project
2. Open build.properties under Resources
3. Go to the bottom and add verbose=true
4. Save and Re-deploy
5. Check the Apache-Ant Log Window in your Jdev.

Here is a the visual walk-thru on how to do this.



Oracle Jdev Debug Window

By Default Jdeveloper Creates a shortcut to "YOUR_INSTALL_DIR/jdeveloper.exe" but best way is to change that link to point to "YOUR_INSTALL_DIR\jdev\bin\jdev.exe" this opens a debug window (black window see below) which shows all the exceptions that are happening with JDev.



This helps in debugging your application what is causing it to fail whether its not able to parse the schema or it's not able to reach any of the wsdl's that are referenced within your soa projects.