corner imagecorner image
IDEPlatformPluginsDocs & SupportCommunityPartners

バイナリデータを渡す Web サービスアプリケーション (パート 1): 概要

このチュートリアルでは、ステートレスセッション Bean として実装する Web サービスを含む EE6 Web アプリケーションを作成します。また、4 つの JPEG ファイルを含むパッケージを Web アプリケーションに追加します。この Web サービスは、クライアントからアクセス可能な 2 つのオペレーションを提供します。1 つは画像を個別に取得する操作、もう 1 つは 4 つの画像すべてのセットをサムネイルとして取得するオペレーションです。ここでは、JPEG ファイルをバイト配列に変換する非公開メソッド、およびそれらのバイト配列を Image オブジェクトに変換する非公開メソッドを追加します。Java EE5 の場合とは異なり、EE6 では Web サービスも EJB であるため、これらの非公開メソッドを直接 Web サービスに追加します。

Web サービスを作成したあと、これを GlassFish サーバー 3.1 のインスタンスに配備します (バグのため、3.0.1 は使用できません)。NetBeans IDE の組み込み Web サービステストページを使用して、サンプル SOAP 要求メッセージや応答メッセージを表示します。

デフォルトの JAX-WS サービスインフラストラクチャーでは、バイナリデータが JPEG ファイルとして解釈される必要があることをクライアントに通知できません。そのため、XML スキーマファイルと WSDL ファイルのコピーを生成し、その XML スキーマを編集して、戻り要素として image/jpeg のコンテンツタイプを予想するようクライアントに通知します。また、カスタマイズした WSDL およびスキーマを使用するために、サービスコードを変更します。

最後に、Swing コンポーネントから作成されたアルバムに画像を表示する Java クライアントアプリケーションを作成します。

完全版のサービスとクライアントアプリケーションは、「NetBeans サンプルカタログ」からダウンロードできます。

注: これは EE 6 版のチュートリアルです。このチュートリアルの EE 5 版を使用するには、「NetBeans IDE 6.8 ドキュメントアーカイブ」を参照してください。

このチュートリアルのレッスン

このページの内容は NetBeans IDE 6.9-7.1 が対象です
  1. => 概要
  2. Web サービスの作成
  3. Web サービスのコーディングおよびテスト
  4. バイナリデータを渡すためのスキーマと WSDL ファイルの変更
  5. Swing クライアントの作成

チュートリアルに必要なソフトウェア

このチュートリアルに従うには、次のソフトウェアとリソースが必要です。

ソフトウェアまたはリソース 必須バージョン
NetBeans IDE Java EE ダウンロードバンドル
Java Development Kit (JDK) version 6 または version 7
Java EE 互換の Web サーバーまたはアプリケーションサーバー GlassFish Server Open Source Edition 3.1

警告: GlassFish 3.0.1 ファイナルリリースに問題があるため、3.1 バージョンを使用する必要があります。

このチュートリアルで使用される画像 rose.jpg
sunflower.jpg
aster.jpg
honeysuckle.jpg

注: GlassFish サーバーは、NetBeans IDE の Java EE ダウンロードバンドルとともにインストールできます。または、GlassFish サーバーのダウンロードページにアクセスしてください。

ヒント: トラブルシューティングのために、完了したサンプルをダウンロードしてソースを調べることもできます (任意)。

このチュートリアルの最後では、Web サービス経由で JPEG 画像を使用する Java Swing アプリケーションを実行し、次のような結果が表示されるようにします。

Web サービスから渡された花の画像をすべて表示する JFrame

次の手順:

Web サービスの作成


関連項目

このチュートリアルを使用する前の背景情報については、次のリソースを参照してください。

メーリングリストに登録することによって、NetBeans IDE Java EE 開発機能に関するご意見やご提案を送信したり、サポートを受けたり、最新の開発情報を入手したりできます。