XML ドキュメントを直接操作するには

XML マップを使用すると、XML メッセージを Java 引数とメソッドの戻り値にマップする方法を設定できます。しかし、マップをまったく使用せずに直接 XML を取得したい場合もあります。

メソッドの入力を生 XML として受け取るには

  1. ソース ビューで、Web サービスの最上位に XML ドキュメント オブジェクト モデル(DOM) クラスのインポートを追加します。

import org.w3c.dom.*;

  1. XML を受け取るメソッドを編集して、XML を保持するパラメータを org.w3c.dom.Node オブジェクトにします。

これにより、Web サービスに送信される XML に直接アクセスできるようになります。このデータにアクセスするには、DOM プログラミング API を使用します。API の詳細については、Xerces API のドキュメントを参照してください。

メソッドの戻り値用の生 XML を生成するには

  1. ソース ビューで、Web サービスの最上位に XML ドキュメント オブジェクト モデル(DOM) クラスと Xerces ドキュメント実装のインポートを追加します。

import org.w3c.dom.*; import org.apache.xerces.dom.DocumentImpl;

  1. メソッドでは、まず Document オブジェクトを作成する必要があります。このオブジェクトは、XML ツリーにノードを作成するためのファクトリとして使用されます。

Document doc = new DocumentImpl();

  1. createElement を呼び出すことによって、返される XML のルート タグを作成します。

Element root = doc.createElement("myTag");

  1. setAttribute を呼び出すことによって、タグに属性を設定できます。

root.setAttribute("myAttr", "value");

  1. appendChild を呼び出すことによって、子タグを作成できます。

Element child = // ... root.appendChild(child);

  1. Text オブジェクトの子ノードを付加することによって、タグの本体にテキストを追加できます。

child.appendChild(doc.createTextNode("some text"));

  1. メソッドの最後に、XML のルート タグを返します。

return root;

関連トピック

ECMAScript の拡張機能で XML を処理する

XML マップを使用して XML メッセージを処理および成形する