どのバージョンを使用していますか? セットアップに関する詳細を追加する場合に便利です。大雑把な推測ですが、ここに役立つことがあります。
コントロールはパートナー リンクとしてエクスポートされます。このパートナー リンクの操作は、コントロール JCX ファイルのメソッドから派生します。各メソッド パラメータは、個別の入力メッセージ パーツとして扱われます。パーツの名前はパラメーターの名前と同じです。出力メッセージは、コントロール メソッドの戻り値の型から決定されます。メソッドには名前のない単一の戻り値の型があるため、パラメーターと呼ばれる単一の部分があります。
http://download.oracle.com/docs/cd/E13214_01/wli/docs85/bpel/export.html#1061022
編集:
少し調査した結果、WLI 8.x を使用していることがわかりました。JPD のエクスポートで問題が発生した場合は、上記のリンクが役立ちます。
別の方法は、8.x プロジェクトを 10g3 プロジェクトにインポートし、そこからエクスポートすることです。このアプローチでは、BPEL2.0 準拠のワークフローを生成できます。警告:これは 1 回限りのインポートであり、以前の WLI バージョンからプロジェクトにアクセスすることはできません。というわけで、コピーしてみてください。
あなたの質問の2番目の部分は明確ではありません。Java コードからコントロールを呼び出すことは、Web サービスを呼び出すことと同じです。EJB 呼び出し/変換であるWLIcontrol
は、Web サービスに変換されますportType
。これらの Web サービスは、Java アプリケーションから (たとえば、Axis を使用して) 利用できます。
例: JPD を変換しようとしてSomeWorkflow.jpd
いて、JPD (WLI 8.x) にコントロールがあった場合
/**
* @common:control
*/
private com.appmills.someapp.controls.TestDBCtrl dbctrl;
または、代わりに 10g3 を使用
@Control()
private com.appmills.someapp.controls.TestDBCtrl dbctrl;
エクスポートにより 3 つのファイルが作成されSomeWorkflow.bpel
、
生成されるコードは次のようになります。 SomeWorkflow.wsdl
SomeWorkflow_ctrl.wsdl
<plnk:partnerLinkType name="com.appmills.someapp.controls.TestDBCtrl">
<plnk:role name="control">
<plnk:portType name="ctrl:com.appmills.someapp.controls.TestDBCtrlPT"
xmlns:ctrl="http://www.bea.com/workshop/bpel/ctrl"/>
</plnk:role>
</plnk:partnerLinkType>
編集 2:
コントロール用に生成された WSDL (上記の例) には、またはタグSomeWorkflow_ctrl.wsdl
が含まれていません。これらは、ユーザーが定義するために除外されています。これらはどこかで利用可能であり、単純に配線する必要があると想定されています。 <binding>
<service>
お気づきかもしれませんが、Oracle-SOA の JCX に相当するものは JCA です。WLI と Oracle-SOA の間に直接のエクスポート/インポートはありません。これは、現在のコードの複雑さと移行計画に基づいて、さまざまな量の作業が必要になる可能性があることを意味します。
私の意見では、特に s の場合、最も簡単な解決策はそれらをs JDBC Control
として書き直すことです。Database adapter