Cosminexus V9 アプリケーションサーバ Webサービス開発ガイド
MTOM/XOP形式の添付ファイルとして送信するデータに応じたJavaオブジェクトの生成方法を説明します。
すでに存在しているテキストファイルを送信する場合,byte[]を使用する方法とjavax.activation.DataHandlerを使用する方法があります。それぞれの手順を説明します。
byte[]を使用して,すでに存在するテキストファイルを送信する場合の手順を次に示します。
java.io.FileInputStream fileInputStream =
new java.io.FileInputStream("sample.txt");
|
java.io.ByteArrayOutputStream byteArrayOutputStream =
new java.io.ByteArrayOutputStream();
int i = 0;
while ((i = fileInputStream.read()) != -1) {
byteArrayOutputStream.write(i);
}
byte[] bytes = byteArrayOutputStream.toByteArray();
|
javax.activation.DataHandlerを使用して,すでに存在するファイルを添付して送信する場合の手順を次に示します。
javax.activation.FileDataSource fileDataSource =
new javax.activation.FileDataSource("sample.txt");
|
javax.activation.DataHandler dataHandler =
new javax.activation.DataHandler(fileDataSource);
|
すでに存在しているイメージファイルを送信する場合,byte[]を使用する方法,javax.activation.DataHandlerを使用する方法,およびjava.awt.Imageを使用する方法があります。それぞれの手順を説明します。
byte[]を使用して,すでに存在するイメージファイルを送信する場合の手順を示します。
java.io.FileInputStream fileInputStream =
new java.io.FileInputStream("sample.png");
|
java.io.ByteArrayOutputStream byteArrayOutputStream =
new java.io.ByteArrayOutputStream();
int i = 0;
while ((i = fileInputStream.read()) != -1) {
byteArrayOutputStream.write(i);
}
byte[] bytes = byteArrayOutputStream.toByteArray();
|
javax.activation.DataHandlerを使用して,すでに存在するイメージファイルを送信する場合の手順を示します。
javax.activation.FileDataSource fileDataSource =
new javax.activation.FileDataSource("sample.png");
|
javax.activation.DataHandler dataHandler =
new javax.activation.DataHandler(fileDataSource);
|
java.awt.Imageをすでに存在するイメージファイルを送信する場合の手順を示します。
java.awt.Image image =
Toolkit.getDefaultToolkit().createImage("sample.png");
|
すでに存在しているXMLファイルを送信する場合,byte[]を使用する方法,javax.activation.DataHandlerを使用する方法,およびjavax.xml.transform.Sourceを使用する方法があります。それぞれの手順を説明します。
byte[]を使用して,すでに存在するXMLファイルを送信する場合の手順を示します。
java.io.FileInputStream fileInputStream =
new java.io.FileInputStream("sample.xml");
|
java.io.ByteArrayOutputStream byteArrayOutputStream =
new java.io.ByteArrayOutputStream();
int i = 0;
while ((i = fileInputStream.read()) != -1) {
byteArrayOutputStream.write(i);
}
byte[] bytes = byteArrayOutputStream.toByteArray();
|
javax.activation.DataHandlerを使用して,すでに存在するXMLファイルを送信する場合の手順を示します。
javax.activation.FileDataSource fileDataSource =
new javax.activation.FileDataSource("sample.xml");
|
javax.activation.DataHandler dataHandler =
new javax.activation.DataHandler(fileDataSource);
|
javax.xml.transform.Sourceを使用して,すでに存在するXMLファイルを送信する場合の手順を示します。
javax.xml.transform.stream.StreamSource streamSource =
new javax.xml.transform.stream.StreamSource("sample.xml");
|
java.lang.Stringオブジェクトを送信する場合byte[]を使用する方法,およびjavax.activation.DataHandlerを使用する方法があります。それぞれの手順を説明します。
byte[]を使用して,java.lang.Stringオブジェクトを送信する場合の手順を示します。
java.lang.String str =
new java.lang.String("あいうえお");
|
byte[] bytes =
str.getBytes();
|
javax.activation.DataHandlerを使用して,java.lang.Stringオブジェクトを送信する場合の手順を示します。
java.lang.String str =
new java.lang.String("あいうえお");
|
javax.activation.DataHandler dataHandler =
new javax.activation.DataHandler(str, "text/plain; charset=UTF-8");
|
MTOM/XOP仕様形式の添付ファイルで,テキストファイル,XMLファイル,またはjava.lang.Stringオブジェクト(文字列)をjavax.activation.DataHandlerオブジェクトとして送信する場合,wsi:swaRef形式の添付ファイルと同様にjavax.activation.DataHandlerクラスのDataHandler(Object, String)コンストラクタを使用することで,オブジェクトに含まれる文字の文字コードを指定できます。
DataHandler(Object, String)コンストラクタを使用した文字コードの指定方法などの詳細は,「28.5.1(4) javax.activation.DataHandlerオブジェクト生成時の注意事項」を参照してください。
All Rights Reserved. Copyright (C) 2012, 2015, Hitachi, Ltd.