9.4 統合アクティビティエディタインタフェースの使用

統合アクティビティエディタには、統合アクティビティの入力、出力、アクションのための作業環境が備わっています。統合アクティビティエディタは、アクションモデル、WSDLエディタ、メッセージの3つのビューで構成されています。

図 9-1 統合アクティビティインタフェース

9.4.1 XMLビュー

統合アクティビティには、WSDLドキュメントから派生したいくつかのXMLビュー(たとえば、入出力メッセージ、WSDLエディタ、メッセージ)が用意されています。これらのビューは共通のインタフェースを使用します。

ツリービュー

XMLドキュメントを階層的に表示して作業する場合は、ツリービューを使用します。[ツリー]タブをクリックすると、ツリービューを表示できます。

図 9-2 ツリービュー

ツリービューの編集機能

ツリービューには次の編集機能が備わっています。

  • 属性値、属性名、ネームスペース名とその値、テキスト、コメントを編集できます。

  • ツリービュー内部で右クリックして表示されるメニューを使って、新しいノードを挿入できます。メニューを使用して、選択したノードの前または後に子供としてノードを挿入できます。ノードが要素である場合は、属性を挿入できます。[子供の追加][後に追加][前に追加]のサブメニューには、正当に追加できるノードが示されます。文書にスキーマやDTDが何も関連付けられていない場合は、サブメニューに[新規属性] または[新規要素]が示されます。

  • ノードを右クリックして[削除]を選択すると、ノードを削除できます。

  • 複数のツリービューの間で(たとえば、入出力メッセージのビューどうし)項目をドラッグアンドドロップして[マップ]アクションを作成できます([マップ]アクションの詳細については、「セクション 9.5.8, マップ」を参照)。

  • 元に戻す、やり直し、切り取り、コピー、貼り付けを行えます。

ツリービューのメニュー

ツリービューで項目を右クリックすると、メニューが表示され、このメニューを使用してXMLドキュメントに対して操作を行えます。メニューはコンテキスト依存で、クリックした項目に適したコマンドのみが表示されます。

表 9-1 ツリービューのメニュー

項目

説明

削除

選択した項目を削除します。

DTD情報の追加

DTD情報の追加に使用するダイアログボックスを表示します。ルート要素名パブリックIDシステムIDを編集できます。

ネームスペースの編集

ネームスペース宣言の追加に使用するダイアログボックスを表示します。

属性の追加

新規属性の定義に使用するダイアログボックスを表示します。

子供の追加

前に追加

後に追加

サブメニューに次のオプションが表示されます。

  • [コメント]
  • [処理命令の追加]
  • [#PCDATA]
  • [CDATAセクション]
  • [新規要素]

置換文字列

選択した項目でメニューから選択した項目を置き換えます。

ツリービューのツールバー

ツリービューのツールバーには次の機能が備わっています。

表 9-2 ツリービューのツールバー

ボタン

説明

ドキュメント内のすべてのノードを展開します。

ドキュメント内のすべてのノードを縮小します。

スキーマまたはDTDを添付します(「スキーマまたはDTDの添付」を参照)。

オンラインヘルプを表示します。

スキーマまたはDTDの添付

ツリービューの使用時に、現在のXMLドキュメントにスキーマまたはDTDを添付することができます。

  1. ツリービューツールバーのをクリックします。[スキーマまたはDTDの添付]ダイアログボックスが表示されます。

  2. XMLカタログのエントリのリストから選択するには、[XMLカタログエントリ]リストからエントリを選択します。

  3. ディスク上にあるXMLスキーマを指定するには、[XMLスキーマ]をクリックします。

  4. [ネームスペースURI]に入力し、[ファイル]フィールドの参照ボタンを使用してディスク上にあるXMLスキーマを選択します。

  5. ディスク上にあるDTDを指定するには、[DTD]をクリックします。

  6. [パブリックID][システムID]に入力してから、[ファイル]フィールドの参照ボタンを使用してディスク上にあるDTDファイルを選択します。

ソースビュー

ドキュメントのXMLソースを表示するには、ソースビューを使用します。ソースビューは[ソース]タブをクリックすると表示されます。

図 9-3 ソースビュー

ソースビューの機能

ソースビューでは次の機能をサポートします。

  • 構文の強調表示。

  • DTDまたはXMLスキーマに基づく、コンテキスト依存のコード補完。

  • 入力時の検証。XMLが無効である(たとえば、タグの閉じ角かっこが省略されている)場合、エディタはエラーを示します。

  • 元に戻す、やり直し、切り取り、コピー、貼り付け、すべて選択などの一般的なテキスト編集操作。

ソースビューのメニュー

ソースビューで項目を右クリックすると、メニューが表示され、このメニューを使用してXMLドキュメントに対して操作を行えます。

表 9-3 ソースビューのメニュー

項目

説明

元に戻す

最後のアクションを取り消します。

やり直し

[元に戻す]操作を取り消します。

切り取り

選択したテキストをクリップボードに切り取ります。

コピー

選択したテキストをクリップボードにコピーします。

貼り付け

クリップボードの内容を挿入位置に貼り付けます。

削除

選択したテキストを削除します。

すべて選択

ドキュメント内のすべてのテキストを選択します。

検索

ドキュメント内のテキストの検索置換に使用するダイアログボックスを表示します。

9.4.2 アクションモデル

アクションモデルには、アクションモデルビューとメッセージパートを表示するビューが組み込まれています。アクションモデルビューには、メッセージパートの内容を操作するアクションが表示されます。メッセージパートには、Webサービス入出力メッセージのXMLが表示されます。

アクションモデルビューについて

アクションモデルビューは設計時にWebサービスとのやりとりのテストに使用されます。アクションモデルビューでアクションを編集します。Webサービスに入力するテストデータを入力ビューに入力し、Webサービスからの応答を出力ビューで調べ、Webサービスから戻されるエラーメッセージがあれば_SystemFaultビューで確認できます。統合アクティビティには次のメッセージペインがあります。

  • 入力ビュー

  • 出力ビュー

  • _SystemFaultビュー

  • アクションモデルビュー

入力ビューについて

入力ビューには、WebサービスのWSDLドキュメントから派生した入力メッセージが表示されます。右側の境界線をドラッグすると、ビューのサイズを変更できます。列の境界線をドラッグすると、ビュー内の列のサイズを変更できます。アクションモデルのテストで使用する値を入力パートに直接指定できます。この場合、指定した値はアクションモデルの実行後に破棄されます。[メッセージ]タブを使用して値を指定することもできます(「セクション 9.4.4, メッセージ」を参照)。この場合、指定した値は値を削除するか、アクションモデルを再生成するまで保持されます(「セクション 9.4.5, アクションモデルのコードの再生成」を参照)。

図 9-4 入力ビュー

出力ビューについて

出力ビューには、WebサービスのWSDLドキュメントから派生した出力メッセージが表示されます。アクションモデルを実行する際には、出力ビューを使用してWebサービスから戻される値を表示します。

左側の境界線をドラッグすると、ビューのサイズを変更できます。列の境界線をドラッグすると、ビュー内の列のサイズを変更できます。モデリングに使用する値を出力パートに直接指定できます。この場合、指定した値はアクションモデルの実行後に破棄されます。[メッセージ]タブを使用して値を指定することもできます(「セクション 9.4.4, メッセージ」を参照)。この場合、指定した値は値を削除するまで保持されます。

図 9-5 出力ビュー

_SystemFaultビューについて

_SystemFaultビューには、アクションモデルの実行時に生成されたエラーメッセージがすべて表示されます。_SystemFaultに含まれるXML情報は、ERRORというグローバルオブジェクトにも書き込まれます。

図 9-6 _SystemFaultビュー

FaultInfoルートの下に、次の要素があります。

  • DateTimeにはフォルトが発生した日付と時刻が入ります。

  • ComponentNameにはフォルトをスローしたコンポーネントの名前が入ります。

  • MainCodeにはエラーの主なコード番号が入ります。

  • SubCodeにはエラーのサブコード番号が入ります。

  • メッセージには[フォルトのスロー]アクション設定時に定義したエラーメッセージが入ります(「フォルトのスロー」を参照)。[フォルトのスロー]アクションにエラーメッセージを指定していない場合は、「ユーザ定義のフォルトが発生しました!」というメッセージが表示されます。。[試行/フォルト時]アクション内でエラーが発生したが、フォルトを指定していなかった場合、この要素には例外メッセージが入ります。

アクションモデルペインについて

統合アクティビティには1つのアクションモデルがあります。アクションモデルは、Webサービス入出力メッセージに対して実行されるマッピング、変換、その他のアクションを表します。アクションモデルビューはサイズを変更できます。アクションモデルビューで行われるほとんどのアクティビティには、アクションの追加と編集が関係します。

アクションモデルのコンテキストメニュー

アクションモデルを右クリックすると、メニューが表示されます。

図 9-7 アクションモデルメニュー

このメニューから、アクションの追加や編集(「セクション 9.5, アクション」を参照)、アクションモデル内のブレークポイントの切り替え(「アニメーション」を参照)、その他のタスクを実行できます。

アクションモデル内でのテキストの検索置換

アクションモデルメニューの[置換]コマンドを使用して、単語または文字列を置換できます。

  1. アクションモデルを右クリックしてから、[置換]を選択します。

  2. 検索テキストを指定します。

  3. 検索テキストを置換する場合は、[置換文字列]をクリックして、検索文字列を置換する文字列を入力します。

  4. テキストの大文字小文字に関係なく検索テキストを検索する場合は、[大文字と小文字を無視する]をクリックします。

  5. 検索テキストに完全に一致する単語のみを検索する場合は、[完全に一致する単語]をクリックします。

  6. [OK]をクリックします。

    統合アクティビティは検索テキストの最初の出現箇所を検索します。操作が検索と置換の操作である場合、統合アクティビティは置換するか確認します。そのようにして、検索テキストの次の出現箇所またはすべての出現箇所を置換できます。

アニメーション

アクションモデルには、統合アクティビティ内でアクションを対話式にテストおよびトラブルシュートするために使用できるアニメーションツールが備わっています。アクションモデルを手順に従って実行し、各アクションの結果を確認できます。何らかのエラーが起きたときに確認できるだけでなく、接続とデータが計画どおりに動作したかをリアルタイムで検証できます。

アニメーションツールを使用すると、1つ以上のブレークポイントを切り替えることができます。アクションモデルの特定のセクションに注目するために、この機能を使用できます。[ブレークポイントまで実行]ツールと連動させて使用する場合、ブレークポイントを設定することで、正しく動作するアクションモデルセクションを速やかに実行し、特定のアクションで停止させます。そこから、各アクションを順番にステップ実行します。1ステップずつ実行すると時間がかかるループやその他のコードブロックをステップオーバーすることもできます。

基本アニメーションツール

アニメーションツールはDesignerツールバーから使用できます。

図 9-8 アニメーションツールバー

表 9-4 アニメーションツール

アニメーションツールバーボタン

名前

説明

実行

アクションモデルを実行します。

現在のアクションを実行

現在選択しているアクションを実行します。

アニメーションの開始

アニメーション処理を開始します。[ステップイン][ステップオーバー][ブレークポイント/終了まで実行]を有効にします。

アニメーションの終了

アニメーション処理を停止します。

ステップイン

現在選択されているアクションを実行し、次の順次アクションを強調表示します。

[ループの繰り返し]アクションの場合、[ステップイン]をクリックすると、ループ内の各アクションが実行され、各ループが繰り返されます。

[決定]アクションの場合、[ステップイン]は[True]または[False]ブランチで次のアクションを処理します。

[試行/フォルト時]アクションの場合、[ステップイン]は実行ブランチ内、および場合によっては[フォルト時]ブランチ内の次のアクションを処理します。

ステップオーバー

現在選択されているアクションを実行し、次の順次アクションを強調表示します。[ステップイン]ボタンとは異なり、このボタンをクリックしても、[繰り返し]、[決定]、[試行/フォルト時]アクションの詳細が強調表示および実行されることはありません。

ブレークポイント/終了まで実行

次のブレークポイントまで、またはブレークポイントがない場合はアクションモデルの最後まで、アニメーションを実行します。

ブレークポイントの切り替え

アクションモデル内の選択されたアクションをブレークポイントとして設定します。2つ以上のブレークポイントを設定することもできます。希望するアクションを右クリックし、メニューから[ブレークポイントの切り替え]を選択してブレークポイントを切り替えることもできます。

アニメーションの一時停止

アニメーションを一時停止します。

アニメーションの開始

統合アクティビティをはじめて開いたときに有効なボタンは、[アニメーションの開始][ブレークポイントの切り替え]だけです。[アニメーションの開始]をクリックすると、残りのアニメーションボタンが有効になります。一時的にアニメーションを休止する場合は、[アニメーションの一時停止]ボタンを使用できます。アニメーションを中止する場合は、いつでも[アニメーションの終了]をクリックして中止できます。

アニメーション時にはコピー、貼り付け、アクション編集操作(新規アクションの追加を含む)がすべて利用できますが、アニメーション中はアクションモデルを編集しないことをお勧めします。編集を行うと、例外や予期しない動作が起きる可能性があります。アクションモデルを編集する必要がある場合は、まず[アニメーションの終了]を使用してアニメーションを停止します。次いで、編集内容を適用して、再びアニメーションを開始します。

  1. 統合アクティビティを開きます。

  2. Designerツールバーの[アニメーションの開始]ボタンをクリックします。[アニメーションの開始]ボタンは灰色で表示され、それ以外のすべてのアニメーションボタンがアクティブになります。

  3. 希望するアニメーションアクティビティを実行するには、次の項の指示に従ってください。

ブレークポイントの切り替え

アクションモデル内のアニメーション処理を停止したい場所にブレークポイントを設定するには、[ブレークポイントの切り替え]ツールを使用します。正しく動作する複数の長いセクションで構成される非常に長いアクションモデルがある場合には、このツールが役立ちます。問題の原因になっているアクションごとにブレークポイントを設定し、アクションをステップ実行して問題をトラブルシュートできます。

  1. [アクション]ペインで、ブレークポイントを設定するアクションを選択します。これがアニメーションの停止する場所です。

  2. Designerツールバーの[ブレークポイントの切り替え]をクリックするか、またはアクションを右クリックして[ブレークポイントの切り替え]を選択します。アクションモデルの左の境界線に、ブレークポイントを示すドットが表示されます。

  3. 必要に応じて、前のステップを繰り返して、追加のブレークポイントを選択します。

アクションのステップイン

[ステップイン]を選択すると、アクションモデル内の選択したアクションが実行され、次の順番のアクションに移動します。[ステップイン]ツールは、アクションモデル全体の中で各アクションをステップ実行するために使用したり、[ブレークポイントまで実行]ツールと組み合わせて使用したりできます。実行は次のブレークポイントに達したとき、またはアクションモデルが終了したとき(いずれか早い方)に停止します。

ブレークポイントを使用する可能性のあるシナリオは、10個のアクションは正しく動作することがわかっているが、11個目のアクションが疑わしい場合です。11個目のアクションをブレークポイントとして設定し、[ブレークポイントまで実行]ツールを実行してから、[ステップイン]ツールを実行して11番目(およびそれ以降)のアクションをステップ実行します。

  1. アニメーションを開始します(「アニメーションの開始」を参照)。

  2. [ステップイン]をクリックします。アクションモデルの最初のアクションが選択されます。

  3. もう一度[ステップイン]をクリックします。選択されたアクションが実行され、次のアクションが選択されます。

  4. アクションが実行されて次のアクションが選択されるたびに[ステップイン]をクリックして、アクションモデルの処理を続行します。

アクションのステップオーバー

[繰り返し]、[決定]、[試行/フォルト時]アクションの詳細にステップインしない場合には、[ステップオーバー]を使用します。各アクションを個別にステップ実行せずに、コードのブロック全体を実行することができます。

[ブレークポイントまで実行]と組み合わせて[ステップオーバー]使用できます。たとえば、ブレークポイントを切り替えて、[ブレークポイントまで実行]を実行してから、[ステップオーバー]を使用してブレークポイントに設定されているアクションを実行できます。[ステップオーバー]を使用することで、アクションをひとつひとつステップ実行するという単調で時間のかかる作業を行わずに済むので、非常に長いアクションモデルをテストする場合に時間をかなり節約できます。

  1. アニメーションを開始します(「アニメーションの開始」を参照)。

  2. ループに達するか、インデントされたコードブロックに先行する他のコード行に達するまで、[ステップイン]でアクションモデルをステップ実行します。

  3. [ステップオーバー]をクリックします。インデントされたコードブロックの後の最初のアクションが選択されます。インデントされたアクションを1つずつステップ実行しなくても、インデントされたコード全体が正しく実行され、そのまま次のアクションのブロックに進みます。

  4. 必要に応じて[ステップオーバー]をクリックして、アクションモデルの処理を続行します。

  5. 引き続き[ステップイン][ステップオーバー]をクリックして、アクションモデル内のすべてのアクションを実行します。

アニメーションの一時停止

アクションモデル内のアクションの実行を一時停止するには、[アニメーションの一時停止]を使用します。アクションモデルに非常に長いループが含まれている場合に、特に役立ちます。

  1. アクションの実行中に、[アニメーションの一時停止]をクリックします。

  2. アニメーションの処理を再開するには、[ステップイン][ステップオーバー][ブレークポイントまで実行](ブレークポイントが設定されている場合)をクリックします。

アニメーションの中止

アニメーションの処理を停止するには、[アニメーションの停止]を使用します。アニメーションを停止した場合、停止した場所から再開することはできません。アクションモデルの最初から再開する必要があります。

9.4.3 WSDLエディタ

WSDLエディタには、WebサービスのWSDLドキュメントが表示されます。WSDLの編集は、ツリービューとソースビューの編集機能を使用して行えます(「ツリービュー」および「ソースビュー」を参照)。

9.4.4 メッセージ

メッセージビューには、WebサービスのWSDLドキュメントから派生したメッセージが表示されます。メッセージの編集は、ツリービューとソースビューの編集機能を使用して行えます(「ツリービュー」および「ソースビュー」を参照)。設計時にアクションモデルを実行するときに使用するテストデータを入力するために、この機能を使用できます。メッセージビューで入力したデータは、アクションモデルの実行も保持されます。

9.4.5 アクションモデルのコードの再生成

WSDLエディタビューで作業している場合、[再生成]ボタンをクリックすることにより、アクションモデルのすべてのコードを再生成し、メッセージを再生成できます。メッセージビューで作業している場合は、アクションモデル内のすべてのアクションを再生成できます。[再生成]ボタンはDesignerツールバーにあります。

図 9-9 [再生成]ボタン

9.4.6 アクションモデルへのアクションの追加

アクションとは、統合アクティビティ内で行われる処理ステップのことです。アクションの集まりをアクションモデルと呼びます。アクションモデルの各アクションがそれぞれ1行に表示され、各行にはアクションの定義の要約とアクションタイプのアイコンが表示されます。一部のアクションは他のアクションに従属します。たとえば、ループ処理を制御する[繰り返し]アクションを作成してから、ループ内部にアクションを追加できます。ループ内部のアクションは[繰り返し]アクションに従属し、[繰り返し]アクションの下にインデントされて表示されます。従属アクションは、[繰り返し]アクションがTrueである限り処理されます。

アクションモデルにアクションを追加するには、アクションモデル内でアクションを挿入する位置の1つ上の行をクリックします。次のいずれかの方法を使用して、アクションを追加します。新規アクションは選択した行の下に挿入されます。

  • ドラッグアンドドロップ。入力ビューから出力ビューに要素をドラッグアンドドロップして、[マップ]アクションを追加できます。

  • コピーと貼り付け。アクションモデルビューのアクションをコピーして、ビュー内のどこか別の場所に貼り付けることができます。

  • アクションモデル内でアクションを追加する位置の1つ上の行を右クリックしてから、希望するアクションをメニューから選択します。

メモ:アクションモデル内でアクションをドラッグして新しい位置に配置することで、アクションモデルのアクションを並び替えることができます。

アクションモデルを作成した後、展開する前に、作成したアクションモデルをテストします。テストはアニメーションツールを使用して行います。アニメーションツールを使って、ブレークポイントの設定、アニメーションの開始、アクションのステップインとステップオーバー、アニメーションの一時停止を行うことができます。詳細については、「アニメーション」を参照してください。