Freitag, August 19, 2005

 

Print BPEL Variable to Stdout

To trace BPEL Variables you can use the java task:

<bpelx:exec>

CubeDOMElement element = (CubeDOMElement)getVariableData ("MyVariable", "payload","/ns2:myData");

System.out.println(doc.asXML());


</bpelx:exec>


I use following command to make the output visible:
tail -f C:\%ORACLE_HOME%\opmn\logs\OraBPEL~OC4J_BPEL~default_island~1

Mittwoch, August 17, 2005

 

Deploy additional BPEL Process Archives

It's a normal way to structure and separate java code from BPEL project. To deploy this dependend JAR-Archives automatically with your BPEL-Project, you must create the following Directory structure within your BPEL Project:


- BPEL-INF- classes
- lib
and copy the required jar archives or classes to that directories.

However, while developing with JDev, you get an compile error as long as you don't create a deployment-dependency to a the jar deployment profile of the other project. Hint: this dependency will not be evaluated from the BPEL deployment process!

 

Output BPEL-Variable to OutputStream

Here is an example to write any BPEL-Variable to System.out or any other stream:

<bpelx:exec import="org.w3c.dom.*"/>
<bpelx:exec import="javax.xml.parsers.*"/>
<bpelx:exec import="javax.xml.transform.*"/>
<bpelx:exec import="javax.xml.transform.dom.*"/>
<bpelx:exec import="javax.xml.transform.stream.*"/>

TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer= transformerFactory.newTransformer();
PrintStream outStream = System.out;
Result output = new StreamResult(outStream);
DOMSource source = new DOMSource((org.w3c.dom.Node) getVariableData("ReceiveFromRMRFileEvent_Read_InputVariable","RMR"));

transformer.transform(source,output);


 

BPEL: User Defined Preferences

Oracle' BPEL deployment descriptor bpel.xml includes the undocumented section "preferences" to configure user defined properties. The generic BPEL Administration console BPELConsole allow the admistration of all variables at runtime without redeployment.
Sample:
<BPELSuitcase>
<BPELProcess id="MyProzess" src="myProzess.bpel">
<preferences>
<property name="myTempDir">c:\temp</property > </preferences>
</BPELProcess>
</BPELSuitcase>

Attention: the position of the preference section is very important. It must be the first element after the BPELProcess tag to work correctly.

There are two build-in functions to read this properties:
ora:getPreference(String name); in each xml expression andgetPreference in the java inline section

This page is powered by Blogger. Isn't yours?