• 検索結果がありません。

Agileイベント・フレームワークとOracle BPELを使用したPLMワークフローの拡張

N/A
N/A
Protected

Academic year: 2021

シェア "Agileイベント・フレームワークとOracle BPELを使用したPLMワークフローの拡張"

Copied!
36
0
0

読み込み中.... (全文を見る)

全文

(1)

Agile イベント・フレームワークと

Oracle BPEL を使用した

PLM ワークフローの拡張

チュートリアル

Jun Gao、Agile PLM Development 共著

2009 年 10 月

(2)
(3)

目次

概要 ... 4 このチュートリアルについて ... 4 目的および範囲 ... 4 使用ソフトウェア ... 4 はじめに ... 5 必要な環境の準備 ... 5 Agile PLM ワークフロー機能の拡張... 6 Oracle BPEL プロセスの作成 ... 6 Agile パートナー・リンクの作成 ... 9 入力変数の定義 ... 11 パートナー・リンクの作成とオペレーションの定義 ... 13

Agile PLM への Oracle BPEL プロセスのデプロイと起動 ... 30

Oracle BPEL プロセスのデプロイ ... 30

(4)

4 Agile イベント・フレームワークと Oracle BPEL を使用した PLM ワークフローの拡張

第 1 章

概要

この章に含まれる内容は、以下のとおりです。  このチュートリアルについて ... 4  目的および範囲 ... 4  使用ソフトウェア ... 4

このチュートリアルについて

このチュートリアルでは、Agile イベント・フレームワークと Oracle Business Process Execution Language (Oracle BPEL)を使用して、Agile ワークフローの機能を拡張する方法について説明します。

目的および範囲

このチュートリアルでは、Oracle BPEL ベースのビジネス・プロセスを使用して、サード・パーティ・アプリ ケーションとデータ交換を行い、次に、Agile Product Lifecycle Management(Agile PLM)の Web サービス API を起動して、Agile PLM 内のオブジェクトを操作します。

具体的には、Agile 9.3 のイベント・フレームワークを使用して、Oracle BPEL ベースのビジネス・プロセスを 開始します。このビジネス・プロセスは、ワークフロー・プロセスに対して変更を加えるか影響を及ぼすか、 または通知を送信します。

使用ソフトウェア

このチュートリアルで使用するソフトウェアは、以下のとおりです。

 Agile PLM 9.3

 Oracle SOA Suite 10.1.3.4(Oracle Technology Network(OTN)Web サイト:

http://www.oracle.com/technology/documentation/agile.html からダウンロードできます)

 Oracle JDeveloper Studio Edition 11g(Oracle Technology Network Web サイト:

(5)

第 2 章

はじめに

この章に含まれる内容は、以下のとおりです。  必要な環境の準備 ... 5

必要な環境の準備

チュートリアルの環境を準備するには、以下の手順に従います。

 Oracle SOA Suite が実行中であることを確認します。  Oracle JDeveloper を起動します。

 http://<Agile サーバー>:<ポート>/CoreService/servicesから Agile Web サービスにアクセスできることを確

(6)

6 Agile イベント・フレームワークと Oracle BPEL を使用した PLM ワークフローの拡張

第 3 章

Agile PLM ワークフロー機能の拡張

この章に含まれる内容は、以下のとおりです。  Oracle BPEL プロセスの作成 ... 6  Agile パートナー・リンクの作成 ... 6  入力変数の定義 ... 11  パートナー・リンクの作成とオペレーションの定義 ... 13

Oracle BPEL プロセスの作成

以下の手順に従って、Oracle BPEL の作業領域とプロジェクトを作成します。 1. アプリケーション・ナビゲータ・ウィンドウで、「Applications」を右クリックしてから「New Application …」を選択します。

2. Application Name フィールドに AgileWorkflowBPEL と入力したら、すべてをデフォルト設定のままにし ます(Directory Name フィールドが下図と異なる場合も、メッセージを無視してデフォルトを受け入れます)。 3. 「OK」をクリックします。

(7)

4. 「Cancel」をクリックします。

5. 新しい「AgileWorkflowBPEL」アプリケーションを右クリックし、「New Project」を選択します。

6. Categories リストで「BPEL」を選択し、Items ウィンドウで「BPEL Process Project」を選択します。 7. 「OK」をクリックします。

BPEL Project Creation ウィザードが表示されます。

(8)

8 Agile イベント・フレームワークと Oracle BPEL を使用した PLM ワークフローの拡張

9. 「Synchronous BPEL Process」を選択してから、「Next」をクリックします。

10. 「Finish」をクリックします。

次のような BPEL プロセス・ダイアグラムが表示されます。

(9)

第 4 章

Agile パートナー・リンクの作成

Agile パートナー・リンクを作成するには、以下の手順に従います。 1. JDeveloper の右上部にあるコンポーネント・パレットを選択し、ドロップダウン・メニューから「Services」 を選択します。 2. 「PartnerLink」アクティビティをドラッグし、デザイナ・ウィンドウの右側の Services の下にドロップ します。

3. Create Partner Link ウィンドウで、WSDL File フィールドに Agile WSDL URL を入力し、[Enter]キーを押 します。

Oracle BPEL Process Manager により、次の Agile URL から WSDL がロードされます。

http://93demo/CoreService/services/Collaboration?wsdl

(10)

10 Agile イベント・フレームワークと Oracle BPEL を使用した PLM ワークフローの拡張

4. 「Yes」をクリックします。

Name フィールドと Partner Link Type フィールドは、自動的に入力されます。 5. 以下のとおりに「Partner Role」を選択します。 6. 「OK」をクリックします。 7. ステップ 1~6 を繰り返して、AgileBusinessObject パートナー・リンクを作成します。 注: ステップ 3 では、次の URL を使用してください。 http://93demo/CoreService/services/BusinessObject?wsdl BPEL デザイナは、以下のように表示されます。

(11)

入力変数の定義

以下の手順に従って、入力変数を定義します。

1. 左側のパネルで、「AgileWorkflowBPEL」プロジェクト→「Integration Content」→「Schemas」を選択し、 AgileWorkflowBPEL.xsd を開きます。

2. 「Design」タブをクリックして、デザイン・ビューからソース・ビューに切り替えます。

3. 要素<element name="input" type="string"/>を、次の 3 つの要素で置き換えます。 <element name="ClassIdentified" type="string"/>

(12)

12 Agile イベント・フレームワークと Oracle BPEL を使用した PLM ワークフローの拡張

<element name="NextStatus" type="string"/>

(13)

パートナー・リンクの作成とオペレーションの定義

パートナー・リンクを作成し、オペレーションを定義するには、以下の手順に従います。

1. BPEL デザイン・ダイアグラムの左側のパネルで、「AgileWorkflowBPEL」プロジェクト→「Integration

Content」→「Schemas」を選択して、「AgileWorkflowBPEL.bpel」を選択します。

2. JDeveloper のコンポーネント・パレットで、ドロップダウン・リストから「Process Activities」を選択 します。

Process Activities に BPEL アクティビティが表示されます。これらのアクティビティは、プロセス・デザ イナ・ウィンドウにドラッグ・アンド・ドロップできます。

(14)

14 Agile イベント・フレームワークと Oracle BPEL を使用した PLM ワークフローの拡張

3. コンポーネント・パレットの「Invoke」をドラッグし、キャンバスの receiveInput アクティビティのすぐ 後にドロップします。

4. 「Invoke」アイコンをダブルクリックして、Invoke ウィンドウを開きます。

5. Invoke Name として UpdateObjectInvoke と入力します。 6. 懐中電灯型のアイコンをクリックします。

(15)

7. 「AgileCollaborationService」パートナー・リンクを選択して、「OK」をクリックします。

8. Operation に「changeStatus」を設定します。

9. Input Variable テキスト・フィールドの横にある魔法の杖型のアイコン(Auto-create variable)をクリック して、このアクティビティのグローバル変数を作成します。デフォルト値はそのままにします。「Apply」 をクリックし、次に「OK」をクリックします。

10. Output Variable テキスト・フィールドの横にある魔法の杖型のアイコン(Auto-create variable)をクリッ クして、このアクティビティのグローバル変数を作成します。

11. デフォルト値はそのままにします。「Apply」をクリックし、次に「OK」をクリックします。 12. ウィンドウが以下のように表示されることを確認し、「OK」をクリックします。

(16)

16 Agile イベント・フレームワークと Oracle BPEL を使用した PLM ワークフローの拡張 13. ステップ 1~13 を繰り返し、UpdateObjectInvoke を作成します。 BPEL デザイン・ビューは、以下のように表示されます。 14. 作成した 2 つのパートナー・リンクに資格証明を設定します。 15. 「AgileCollaborationServer」パートナー・リンクのアイコンをダブルクリックしてから、Property タブを 表示して 2 つのプロパティを作成します。

(17)

注: ユーザー名とパスワードに使用した値を、Agile PLM システムで検証する必要があります。

(18)

18 Agile イベント・フレームワークと Oracle BPEL を使用した PLM ワークフローの拡張 17. コンポーネント・パレットから「Assign」アクティビティをドラッグし、receiveInput アクティビティと ChangeStatusInvoke アクティビティにドロップします。 18. 先ほど追加した「Assign」アイコンをダブルクリックします。 19. 「General」タブをクリックして、Name フィールドに CopyInput と入力します。 20. 「Apply」をクリックします。 21. 「Copy Operation」タブをクリックします。 22. 「Create」をクリックしてから、ドロップダウン・リストから「Copy Operation」を選択します。 23. 次に示すとおり、2 つのコピー・オペレーションを作成します。それぞれのコピー・オペレーションで「OK」 をクリックして、次に進みます。

(19)
(20)

20 Agile イベント・フレームワークと Oracle BPEL を使用した PLM ワークフローの拡張

24. 「Create」をクリックしてから、ドロップダウン・リストから「Copy Operation」を選択します。 25. From セクションで、Type ドロップダウン・リストから「Expression」を選択し、xp20:current-dateTime()

と入力します。

26. 「Create」をクリックしてから、ドロップダウン・リストから「Copy Operation」を選択します。 27. From セクションで、Type ドロップダウン・リストから「Expression」を選択し、375 と入力します。

(21)

28. 「Create」をクリックしてから、ドロップダウン・リストから「Copy Operation」を選択します。 29. From セクションで、Type ドロップダウン・リストから「Expression」を選択し、DISABLE と入力します。

30. 「Create」をクリックしてから、ドロップダウン・リストから「Copy Operation」を選択します。 31. From セクションで、Type ドロップダウン・リストから「Expression」を選択し、true()と入力します。

(22)

22 Agile イベント・フレームワークと Oracle BPEL を使用した PLM ワークフローの拡張

32. 次に示すとおり、さらに数回、コピー・オペレーションの作成を繰り返します。admin については、シス テム内の有効なユーザーID で置き換えます。

(23)
(24)
(25)
(26)

26 Agile イベント・フレームワークと Oracle BPEL を使用した PLM ワークフローの拡張

(27)
(28)

28 Agile イベント・フレームワークと Oracle BPEL を使用した PLM ワークフローの拡張

(29)

注: 1575 は、Agile システムの設定に使用される属性 ID です。

(30)

30 Agile イベント・フレームワークと Oracle BPEL を使用した PLM ワークフローの拡張

第 5 章

Agile PLM への Oracle BPEL プロセスの

デプロイと起動

この章に含まれる内容は、以下のとおりです。

 Oracle BPEL プロセスのデプロイ ... 30  Agile PLM の設定と Oracle BPEL プロセスの起動 ... 31

Oracle BPEL プロセスのデプロイ

Oracle BPEL プロセスをデプロイするには、以下の手順に従います。 1. 左側のペインで「build.properties」をダブルクリックして、このファイルを開きます。 2. build.properties ファイルに、次の 3 つのプロパティを定義します。これらのプロパティには、環境に応 じた値を設定してください。  admin.user = bpeladmin  admin.password =welcome1  http.port = 80

(31)

3. 「build.xml」を右クリックしてから、「Run Ant Target」→「deploy」を選択します。

これにより、Oracle BPEL プロセスがコンパイルされ、ターゲットの Oracle BPEL サーバーにデプロイさ れます。

Agile PLM の設定と Oracle BPEL プロセスの起動

この項では、Agile PLM システムに関する実用的な知識を前提としています。特に、Java クライアントを使用 して、ワークフロー、イベント、サブスクライバ、およびイベント・ハンドラを設定できる必要があります。 必要に応じて、Agile PLM 9.3 の『Administorator Guide』および『SDK Developer Guide』の該当部分を参照 してください。

(32)

32 Agile イベント・フレームワークと Oracle BPEL を使用した PLM ワークフローの拡張 Agile PLM の設定を行うには、以下の手順に従います。

1. BPEL Change Order という名前で、新規ワークフローを作成します。手順について、詳しくは『Agile Product

Lifecycle Management Administorator Guide』を参照してください。

(33)

3. Agile 9.3 イベントを作成します。

4. イベント・ハンドラを作成します。

Oracle BPEL プロセスを起動するには、以下の手順に従います。

(34)

34 Agile イベント・フレームワークと Oracle BPEL を使用した PLM ワークフローの拡張

a. Oracle BPEL Control にログオンし、Oracle BPEL プロセス向けの WSDL ファイルをダウンロードし ます。

b. Apache Web サイト(http://ws.apache.org/muse/docs/2.2.0/tutorial/03-wsdl2java.html)にある WSDL2Java チュートリアルに従って、スタブを生成します。

c. コンパイルを実行し、Java jar コマンドを使用してすべてのスタブを圧縮したファイルを Agile システ ムの extension ディレクトリに保存します。

d. Agile PLM システムを再起動します。

2. スタブを使用して Oracle BPEL プロセスを起動するように、イベント・ハンドラに Groovy スクリプティ ング・コードを作成します。

(35)

3. イベント・サブスクライバを作成して、イベントにイベント・ハンドラを関連付けます。

(36)

36 Agile イベント・フレームワークと Oracle BPEL を使用した PLM ワークフローの拡張

5. 変更が Pending から BPELStatus へルーティングされると、イベントが呼び出され、イベント・ハンドラ によりビジネス・プロセスが起動されます。次に、ビジネス・プロセスにより Agile Web サービス API が 呼び出され、変更が BPELStatus から CCB へルーティングされます。さらに、Agile オブジェクト・フィー ルド(BPEL Triggerd)に、ビジネス・プロセスが起動された時点のタイムスタンプが記録されます。

参照

関連したドキュメント

HORS

このマニュアル全体を読んで、Oracle Diagnostics Pack に同梱の Oracle Performance Manager、Oracle Capacity Planner、Oracle TopSessions および Oracle Event

この課題のパート 2 では、 Packet Tracer のシミュレーション モードを使用して、ローカル

①物流品質を向上させたい ②冷蔵・冷凍の温度管理を徹底したい ③低コストの物流センターを使用したい ④24時間365日対応の運用したい

Revit Architecture は、BIM(ビルディング・インフォメーション・モデル)作成のトップツールになってお

締約国Aの原産品を材料として使用し、締約国Bで生産された産品は、締約国Bの

Oracle の Sun Storage 16 Gb Fibre Channel PCIe Universal Host Bus Adapter (HBA) (パーツ番号 7101674) は、QLogic テクノロジを使用したスタンドアロンの PCIe ロー

利用している暖房機器について今冬の使用開始月と使用終了月(見込) 、今冬の使用日 数(見込)