Web サービスで使用するためのスクリプトを作成するには

ECMAScript 関数を作成すると、サービスが送受信する XML メッセージと Java コードの間の WebLogic Server による変換をカスタマイズできます。スクリプトを使用するには、その参照を JWS ファイルに配置します。実行時に、WebLogic Server が変換でそのスクリプトを使用します。作成したスクリプトは、拡張子が JSX のファイルに格納します。

以下のステップでは、何をすべきかをおおまかに説明するとともに、詳細情報へのリンクも提供します。

  1. 新しいスクリプト関数が格納される JSX ファイルを開くか、新しいファイルを作成します

  2. Java コードで使用するように受信 XML を変換する関数を記述するか、Java データを送信 XML に変換する関数を記述します。

  3. XML マップを通じて JWS の Java コードにスクリプト関数を接続します

以下の手順では、XML と Java を変換するための ECMAScript 関数を記述する基本的な方法をステップバイステップで説明します。

新しい JSX ファイルを作成するには

  1. プロジェクトの中で、スクリプト(JSX)ファイルを格納するフォルダを特定します。

ファイルの配置場所は、プロジェクトがどのように構造化されるのかによって異なります。たとえば、JSX を使用する JWS ファイルと同じフォルダに入れることもできます。このプロジェクトのすべての JSX ファイルを格納する独立した(または下位の)「スクリプト」フォルダを作成することもできます。

  1. フォルダを右クリックし、[新しいファイル] をクリックします。

  2. [新しいファイルの作成] ダイアログで [JavaScript] をクリックします。

  3. [ファイル名] ボックスにスクリプト ファイルの名前を入力します。

スクリプト ファイルでは、[ファイル拡張子] ボックスにデフォルトで「jsx」が表示されます。

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

新しいスクリプト ファイルがソース ビューで開きます。プロジェクト ツリーには今作成したファイルがリストされます。

Java を XML に変換するための ECMAScript を作成するには

  1. 新しい関数を追加する JSX ファイルを開きます。

注意: 上の手順で作成したばかりの JSX ファイルを使用する場合は、この関数のプレースホルダがすでに存在していなければなりません。

  1. 必要に応じて、import 文を使用し、ECMAScript コードで使用する Java クラスをインポートします。

この文は、Java の import ディレクティブに似ています。スクリプトで使用するすべての Java クラスをインポートする必要があります。import の詳細については、import 文で Java クラスを ECMAScript にインポートするを参照してください。

import mypackage.MyOuterClass.MyClass;

  1. XML に変換するための関数を宣言します。

関数宣言には任意の名前を付けられますが、次の事項を守らなければなりません。

たとえば、次の図は 2 つの Java パラメータを受信するように設計された関数宣言を示しています。

関数は JWS ファイルの XML マップから参照します。たとえばこの図の場合は、クライアントへのコールバックまたは ServiceControl のメソッドから 2 つのパラメータを受信できます。

スクリプト関数を JWS ファイルに接続する詳細については、Web サービスからスクリプトを使用するにはを参照してください。

  1. パラメータで表されたデータを使用して XML を形成する ECMAScript コードを追加します。

拡張版の ECMAScript を使用すると、XML の作成と処理が容易になります。たとえば、以下のことができます。

  1. 関数の最後に、コードによって作成された XML 変数を返します。

返した XML は、WebLogic Server から送信されるメッセージに追加されます。たとえば、XML を作成し、2 つの値をそれに追加する単純なスクリプトは次のようになります。

/* Create an XML variable. */ var orderMessage = <order/>; /* Add two child elements, inserting values from parameters received by the script. */ orderMessage.appendChild(<item_name>{orderInfo.name}</item_name>); orderMessage.appendChild(<customer_name>{customerInfo.name}</customer_name>): /* Return the new XML */ return orderMessage;

スクリプトを作成した後は、XML マップを通じて JWS ファイルに接続することでそのスクリプトを使用します。詳細については、Web サービスからスクリプトを使用するにはを参照してください。

XML を Java に変換するための ECMAScript を作成するには

  1. 新しい関数を追加する JSX ファイルを開きます。

注意: 上の手順で作成したばかりの JSX ファイルを使用する場合は、この関数のプレースホルダがすでに存在していなければなりません。

  1. 必要に応じて、import 文を使用し、ECMAScript コードで使用する Java クラスをインポートします。

この文は、Java の import ディレクティブに似ています。スクリプトで使用するすべての Java クラスをインポートする必要があります。import の詳細については、import 文で Java クラスを ECMAScript にインポートするを参照してください。

import mypackage.MyOuterClass.MyClass;

  1. XML を Java に変換するための関数を宣言します。

関数宣言には任意の名前を付けられますが、次の事項を守らなければなりません。

たとえば、次の図は XML を受信するように設計された関数宣言を示しています。

関数は JWS ファイルの XML マップから参照します。スクリプト関数を JWS ファイルに接続する詳細については、Web サービスからスクリプトを使用するにはを参照してください。この種の関数が XML マップからどのように参照されるのかについては、XML マップからスクリプト関数を使用するを参照してください。

  1. 関数のパラメータで表された受信 XML を使用して JWS ファイルで必要なデータを作成する ECMAScript コードを追加します。

拡張版の ECMAScript を使用すると、XML の処理が容易になります。たとえば、以下のことができます。

  1. 関数の最後に、Java コードで必要な変数が格納された配列を返します。

返した変数は、Java 宣言に渡されます。たとえば、XML にアクセスし、2 つの値を抽出する単純なスクリプトは次のようになります。

/* Create variables you will later return to your Java declaration. */ var orderInfo = xml.order.order_info; var customerInfo = xml.order.customer_info; /* Return an array containing the variables. */ return [orderInfo, customerInfo];

スクリプトを作成した後は、XML マップを通じて JWS ファイルに接続することでそのスクリプトを使用します。詳細については、Web サービスからスクリプトを使用するにはを参照してください。

関連トピック

Web サービスからスクリプトを使用するには

ECMAScript 言語の拡張機能の概要

XML 変数を作成および使用する