XSL スタイルシートを使用した XML ファイルの変換

このプロジェクトの構成には、約 5 分かかります。

始める前に

このサンプルで作業するには、その前に以下のようにして、サンプルをワークスペースにインポートする必要があります。
  1. 次のリンクをクリックします。サンプルのインポート
  2. 「プロジェクトのインポート」ダイアログ・ボックスで、デフォルトを受け入れて「完了」をクリックします。 ワークスペースに以下のプロジェクトがインポートされます。
    • BookCatalogWebService
    • BookCatalogWebServiceEAR

このタスクについて

インポートされたサンプル・コードを使用して、XSL スタイルシートを使用して以下のように XML コードを変換する方法について確認します。
  • XSL スタイルシートを使用して、XML ファイルを、XSL ファイルによって定義されるコンテンツを含んだ新しい XML ファイルに変換できます。
  • Web サービスを使用して、XML 入力コンテンツを、Web サービスによって呼び出される XSL ファイルによって定義される XML コンテンツに変換できます。
XSL スタイルシートを使用して、XML ファイルを新しい XML ファイルに変換するには、以下のようにします。
  1. 「エンタープライズ・エクスプローラー」ビューで、「BookCatalogWebService」 > 「WebContent」を開きます。
  2. Catalog.xml ファイルを開き、そのコンテンツを調べます。ファイルには Book (<tns: Book>) 要素と Magazine (<tns: Magazine>) 要素が含まれています。ファイル内の要素は順不同です。
  3. 「Ctrl」キーを押しながら、以下のファイルをクリックします。
    • Catalog.xml
    • Catalog.xsl
    両方のファイルが選択されます。
  4. 選択したファイルのいずれかを右クリックし、「実行」 > 「XSL 変換」をクリックします。 「コンソール」ビューが開き、変換入力ファイルと結果ファイルの名前が表示されます。
  5. 結果ファイル _Catalog_transform.xml は WebContent フォルダーにあります。結果ファイルを開き、コンテンツを確認します。含まれているのが Book 要素だけで、この要素では最初が国で、次に発行日付という順序になっていることを確認してください。

次のタスク

また、Web サービスを使用しても同様の変換を実行できます。

Web サービスを使用して、XSL 変換を呼び出して入力 XML コンテンツを変換するには、以下のようにします。
  1. WebSphere Application Server V8.5.5.5 サーバーが定義済みであることを確認します。
    デフォルトでは、WebSphere Application Server のインストール時にサーバーが 1 つ作成されます。このサーバーは、「サーバー」ビューで確認できます。ただし、新しいサーバーを作成する場合には、以下のステップを実行します。
    1. 「ファイル」 > 「新規」 > 「その他」 > 「サーバー」 > 「サーバー」 > 「次へ」の順にクリックします。
    2. サーバーのタイプとして WebSphere V8.5.5 サーバーを選択し、「次へ」をクリックします。
    3. ワークスペースに接続しているランタイム環境がない場合には、WebSphere Application Server のインストール・ディレクトリーを入力するようにプロンプトが出されます。
    4. 「サーバー設定」ページで、「完了」をクリックします。
    5. 作成したサーバーをワークスペースに表示するには、「ウィンドウ」 > 「ビューの表示」 > 「その他」 > 「サーバー」 > 「サーバー」 > 「OK」の順にクリックします。
  2. EAR プロジェクトをサーバーに追加します。
    1. 「サーバー」ビューで、WebSphere Application Server V8.5.5 サーバーを右クリックし、「プロジェクトの追加および削除」をクリックします。
    2. 選択可能なプロジェクトのリストで、「BookCatalogWebServiceEAR」をクリックしてから、「追加」「完了」の順にクリックします。
  3. WebSphere Application Server V8.5.5 サーバーが使用する HTTP ポートを確認します。
    1. 「サーバー」ビューで、WebSphere Application Server V8.5.5 サーバーを右クリックし、「プロパティー」をクリックします。
    2. 開いた「プロパティー」ウィンドウの左側で、「WebSphere Application Server」をクリックします。
    3. 「HTTP ポート」の値を確認してください。値が 9080 ではない場合、その値をメモに取ります。後のステップでこの値を使用します。
  4. 「サーバー」ビューで、WebSphere Application Server V8.5.5 サーバーを右クリックし、「開始」をクリックします。
  5. 「エンタープライズ・エクスプローラー」ビューで、WebContent¥WEB-INF¥wsdl¥Catalog.wsdl ファイルにナビゲートします。
    1. ステップ 3 で確認した WebSphere Application Server V8.5.5 の HTTP ポートが 9080 でなかった場合、この WSDL ファイルを変更する必要があります。
      1. Catalog.wsdl を右クリックして、「アプリケーションから開く」 > 「テキスト・エディター」の順にクリックします。
      2. ファイルの末尾付近に以下のテキストがあります。
        <soap:address
        				location="http://localhost:9080/BookCatalogWebService/BookCatalogService" />
      3. localhost の後の値をステップ 3 でメモした HTTP ポートに変更します。例えば、HTTP ポートが 9082 なら、テキストを以下のように変更します。
        <soap:address
        				location="http://localhost:9082/BookCatalogWebService/BookCatalogService" />
      4. 変更を保存します。
    2. 「エンタープライズ・エクスプローラー」ビューで、Catalog.wsdl を右クリックし、「Web サービス」 > 「Web サービス・エクスプローラーのテスト」の順にクリックします。Web サービス・エクスプローラーが開きます。
  6. Web サービス・エクスプローラーの「アクション」ウィンドウの「オペレーション」の下にある「generateReport」をクリックします。
  7. 「アクション」ウィンドウの右上隅にある「ソース」をクリックします。
  8. 「入力」ウィンドウの <soapenv:Body> 下にある現在のコンテンツを削除します。
  9. 以下のコンテンツを、「入力」ウィンドウの <soapenv:Body> の下にコピーします (このコンテンツは、Catalog.xml ファイルのソースと同じです。ただし、Catalog.xml の最初の行は削除されています):
    <tns:Catalog xmlns:tns="http://www.eclipse.org/webtools/Catalog"
    	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xsi:schemaLocation="http://www.eclipse.org/webtools/Catalog Catalog.xsd">
    	<tns:Book>
    		<Title>Professional XML Schema</Title>
    		<PublishDate>2001-01-01</PublishDate>
    		<ISBN>1-861005-47-4</ISBN>
    		<Publisher>Wrox Press</Publisher>
    		<Country>USA</Country>
    	</tns:Book>
    	<tns:Magazine>
    		<Title>WebSphere Developer's Journal</Title>
    		<PublishDate>2001-02-01</PublishDate>
    	</tns:Magazine>
    	<tns:Book>
    		<Title>Java and XSLT</Title>
    		<PublishDate>2001-03-01</PublishDate>
    		<ISBN>0-596-00143-6</ISBN>
    		<Publisher>O'Reilly</Publisher>
    		<Country>Canada</Country>
    	</tns:Book>
    	<tns:Book>
    		<Title>XSLT 2.0</Title>
    		<PublishDate>2006-04-05</PublishDate>
    		<ISBN>0-596-125407</ISBN>
    		<Publisher>Hello World</Publisher>
    		<Country>Canada</Country>
    	</tns:Book>
    	<tns:Book>
    		<Title>Rational handbook</Title>
    		<PublishDate>2005-06-07</PublishDate>
    		<ISBN>2-345005-47-4</ISBN>
    		<Publisher>IBM</Publisher>
    		<Country>USA</Country>
    	</tns:Book>
    	<tns:Book>
    		<Title>XPath and XML 2.0</Title>
    		<PublishDate>2006-02-03</PublishDate>
    		<ISBN>2-536-897767</ISBN>
    		<Publisher>IBM</Publisher>
    		<Country>Canada</Country>
    	</tns:Book>
    </tns:Catalog>
  10. 「実行」をクリックします。
  11. Web サービス・エクスプローラーの「状況」ウィンドウを確認します。含まれているのが Book 要素だけで、この要素では最初が国で、次に発行日付という順序になっていることを確認してください。
  12. 終了したら、サーバーを停止できます。

フィードバック