![]() ![]() ![]() ![]() |
この節では BEA Workshop for WebLogic® で BPEL エクスポート ツールを使用して、JPD ファイルから BPEL 1.1 の対応コードをエクスポートする方法を説明します。
BPEL4WS (一般に「BPEL」と呼ばれる Web サービスの Business Process Execution Language) はビジネス プロセス自動化のための正式な言語仕様を定義します。BPEL で記述されたプロセスは、XML ドキュメントを使用する Web サービス間の対話を、標準化された方法で統合することができます。BPEL 仕様に準拠していればどのプラットフォームや製品であってもこれらのプロセスを実行できます。したがって、BPEL により、プロセスの定義をさまざまな作成ツールと実行プラットフォーム間で移動することが可能になり、プロセスの自動化に対する顧客の投資を保護することができます。ビジネス プロセス定義を標準化しようとする試みは以前からありましたが、BPEL はそれまでで最大の注目を浴び、必要なソフトウェア ベンダの支持を獲得した第一号です。
BPEL4WS 1.1 は BEA、Microsoft®、および IBM® から公開された最新の仕様ですが、OASIS 標準化団体により検討中の次期 BPEL 標準は反映されていません。最終バージョンは BPEL4WS 1.1 とは異なるため、本ツールは主に、1.1 仕様をサポートする他のツールとの設計時の相互運用を可能にすることを目的として提供されています。
BPEL 言語の詳細については、BEA、IBM、および Microsoft により発行され、標準化のために OASIS に提出された以下で利用可能な BPEL4WS 仕様 v1.1 を参照してください。
http://dev2dev.bea.com/webservices/BPEL4WS.csp
OASIS 主催の BPEL 標準化作業のための公式ホームページ (以下 URL)
http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsbpel
BEA WebLogic Integration™ では、ビジネス プロセスは、Java (JPD) に BEA プロセス定義を使用して定義されます。BPEL エクスポート ツールは、JPD ファイルから BPEL ファイルへの変換に使用する設計時支援機能です。
BPEL エクスポート ツールで JPD ファイルのセマンティクスを BPEL にエクスポートして、BPEL 設計環境で使用することができます。BPEL エクスポート ツールを使ってエクスポートされた BPEL コードは、BPEL 1.1 に準拠し、BPEL 1.1 準拠の設計環境で使用できます。JPD のメイン統合ロジックは BPEL にエクスポートされますが、エクスポートされた BPEL ファイルは通常ただちに対象環境で実行することはできません。対象環境で BPEL を操作して、エクスポートされたプロセスを実行させるか、または実行時セマンティクスに近づける必要があります。
これは JPD から実行可能なコールアウトのいくつかが、エクスポートされた BPEL コードには不明瞭になるためです。一般にこれらの実行可能なユニットには、コントロール、perform ノードに記述されたコード、および XQuery トランスフォーメーションが含まれます。BPEL エクスポート ツールは BPEL の拡張ノードとして Java コードおよび XQuery コードをコピーします。結果として、JPD が BPEL により提供される機能のスーパーセットを提供するため、対象 BPEL 環境にロジックを再実装する必要があります。
1 つの Web Service Definition Language (WSDL) ファイルはビジネス プロセスの WSDL インタフェースを定義し、インタフェースのためにパートナ リンクのタイプを定義します。もう 1 つのファイルは WSDL インタフェースおよびパートナ リンクのタイプを定義します。パートナは、ビジネス プロセスと対話するアーティファクトです。これらのアーティファクトは、ビジネス プロセスに対するサービスのコンシューマかプロバイダのいずれかです。
これらの WSDL ファイルは対応する JPD または JCX ファイル用に BEA Workshop for WebLogic が生成する WSDL と同じものではありません。違いについては、「確認済みの制限事項と問題」で詳しく説明しています。
関連する XSD スキーマ ファイル (WebLogic Integration アプリケーションのスキーマ フォルダ内) は WSDL および BPEL ファイルと共に、対象環境内に存在する必要があります。
Process.java
[エクスポート] を右クリックします。workspace
を参照する %workspace%/.metadata
にあります。
この節ではエクスポート プロセスについての注意事項を説明し、BPEL エクスポート ツールの確認されている制限事項について詳しく説明します。
注意 : | BPEL エクスポート ツールを使用する際に覚えておく必要のある情報について詳しく説明します。 |
http://www.w3.org/TR/2002/WD-xquery-20020816
AquaLogic ビジネス プロセス管理にインポートする場合、以下の URL で入手可能な expressionLanguage に置き換えてください。
http://www.w3.org/TR/1999/REC-xpath-19991116
JPD ファイルの XQuery 式はそのまま、対応する BPEL アクティビティの式属性にコピーされます。データ トランスフォーメーション コントロールで参照された XQuery コードは、JPD ネームスペース xqueryCode 要素にコピーされます。Java コードが BPEL 拡張機能として <jpd:javacode
> ノードにコピーされます。AquaLogic ビジネス プロセス管理は、これらの要素を検証しません。
receive name="Client-Request" jpd:name="Client Request" ...
/> のように追加の値を含める可能性があります。scope/
> を許可しません。
この節では確認済みの JPD エクスポート制限事項のいくつかについて説明します。
int
、short
、long
、byte
、float
、boolean
、double
、String
、java.util.Date
、および java.util.Calendar
は対応するスキーマ組み込み型に変換されます。XMLBean 型は、対応する XML スキーマ型に変換されます。ラッパー要素型が複合型に導入されているため、BPEL 変数は、自身の型として複合型を持つことができません。他の型 (一時的なトランスフォーム変数を含む) はすべて、型属性のない要素型に変換されます。パラメータ
と呼ばれるパートを持ちます。xqueryCode
要素にコピーされます。invoke
、reply
、receive
アクティビティの前または後にアクティビティを割り当てます。
表 2-1 では、さまざまな JPD ファイル属性、ノード等がどのように BPEL ファイルに変換されるかを説明します。
jpd:initialValue
として取り込まれます。xsd:include
要素でユーザ スキーマが参照されています。WSDL ファイルでこの型が使用されている場合は、wsdl:import
を使用してエクスポートします。ArrayList
または別の Collection クラスの add()
メソッドが含まれていると、値が true
に設定された非標準の JPD ネームスペース属性 jpd:appendToCollection
が生成されます。MFL タイプはエクスポートのためにサポートされていません。<type> には、空の要素タイプを作成します。
」afterExecute=resume
がサポートされません。freezeOnFailure=true
、onSyncFailure
、および persistent
がサポートされません。OnException
パスで executeOnRollback
がサポートされません。jpd:transaction
が true
に設定されたスコープに変換されます。<jpd:xquerycode>
ノードにコピーされます。<jpd:javacode>
ノードにコピーされます。<jpd:javacode>
拡張機能として含まれます。$
などの特殊文字を含むプロセス変数名、コントロール ファイル名 (..dtf、.jcs
など)、コントロール メソッド名、コントロール メソッド内で使用されるパラメータ、コントロールに対して定義された変数名、および .jpd
ファイル名を .
bpel
ファイルにエクスポートすると、「variable」の「name」属性と「to」の「variable」属性でこれらの名前がそのまま使用されます。BPEL スキーマではこれらの属性は NCName 型として定義するので、生成される .
bpel
ファイルではこれらの特殊文字は無効になります。ただし、$
文字には、この制限は当てはまらなくなりました。他の特殊文字 (有効 NCName または QName 型ではない文字) については、.bpel ファイルは生成されますが、ファイルのスキーマ検証は失敗します。
![]() ![]() ![]() |