BPEL 2.0プロセスにJavaコード・スニペットを埋め込む方法
この章の例では主に、bpelx:exec拡張要素を使用してJavaコード・スニペットを埋め込む方法に重点を置いています。BPEL仕様のバージョン2.0をサポートするBPELプロジェクトの場合、構文が多少異なります。bpelx:exec拡張要素とJavaコードは<extensionActivity>要素にラップされます。次の例に詳細を示します。
               
<extensionActivity> <bpelx:exec language="java"> <![CDATA[ java code ]]> </bpelx:exec> </extensionActivity>
Java EmbeddingアクティビティをOracle BPELデザイナのBPELプロセスにドラッグすると、<extensionActivity>要素とbpelx:execタグが自動的に追加されます。 
               
次の例は、BPEL 2.0のimport構文を示しています。
<import location="class/package name" importType="http://schemas.oracle.com/bpel/extension/java"/>
ノート:
BPEL 2.0のimport構文は、次の構文を使用するBPEL 1.1の場合とは異なります。
<bpelx:exec import="class/package name"/>
次の例は、BPELバージョン2.0をサポートするプロジェクトの2つのJava Embeddingアクティビティを含むBPELファイルを示しています。
<process name="Test" targetNamespace="http://samples.otn.com/bpel2.0/ch10.9"
     . . .
     . . .
 <import location="oracle.xml.parser.v2.XMLElement"
     importType="http://schemas.oracle.com/bpel/extension/java"/>
. . . 
 <sequence>   
 . . .
<extensionActivity>
     <bpelx:exec language="java">
         XMLElement elem = (XMLElement) getVariableData("output", "payload");
         elem.setTextContent("set by java exec");
     </bpelx:exec>
   </extensionActivity>
   <extensionActivity>
     <bpelx:exec language="java">
         <![CDATA[XMLElement elem = (XMLElement) getVariableData("output",
          "payload");
         String t = elem.getTextContent();
         elem.setTextContent(t + ", set by java exec 2");]]>
     </bpelx:exec>
   </extensionActivity>
  . . .
 </sequence>
</process>
このアクティビティの使用方法の詳細は、「BPELプロセスでのJava埋込みの使用」を参照してください。