BytesMessageインタフェースはバイトストリームを含むメッセージを送受信するために使用します。BytesMessageインタフェースはMessageインタフェースを継承しているため,Messageインタフェースの機能を持っています。
BytesMessageインタフェースを使用することによってペイロードを設定および取得できます。このペイロードはバイトストリームです。JMSメッセージの各要素については,「2.5.1 JMSメッセージの構成」を参照してください。
public interface BytesMessage extends Message
{
public boolean readBoolean() throws JMSException;
public byte readByte() throws JMSException;
public int readBytes(byte[] value) throws JMSException;
public int readBytes(byte[] value, int length)
throws JMSException;
public char readChar() throws JMSException;
public double readDouble() throws JMSException;
public float readFloat() throws JMSException;
public int readInt() throws JMSException;
public long readLong() throws JMSException;
public short readShort() throws JMSException;
public int readUnsignedByte() throws JMSException;
public int readUnsignedShort() throws JMSException;
public java.lang.String
readUTF() throws JMSException;
public void reset() throws JMSException;
public void writeBoolean(boolean value) throws JMSException;
public void writeByte(byte value) throws JMSException;
public void writeBytes(byte[] value) throws JMSException;
public void writeBytes(byte[] value, int offset, int length)
throws JMSException;
public void writeChar(char value) throws JMSException;
public void writeDouble(double value) throws JMSException;
public void writeFloat(float value) throws JMSException;
public void writeInt(int value) throws JMSException;
public void writeLong(long value) throws JMSException;
public void writeObject(java.lang.Object value)
throws JMSException;
public void writeShort(short value) throws JMSException;
public void writeUTF(java.lang.String value) throws JMSException;
}
ありません。
「(2) 形式」に記載した順序で各メソッドを説明します。
public boolean readBoolean() throws JMSException
バイトストリームからboolean型の値を読み取ります。
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの読み取りに失敗しました。 |
MessageEOFException | バイトストリームの予期しない終端に達しました。 |
MessageNotReadableException | 書き込み専用モードのペイロードから情報を読み取ろうとしました。 |
public byte readByte() throws JMSException
バイトストリームから符号付き8ビット値を読み取ります。
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの読み取りに失敗しました。 |
MessageEOFException | バイトストリームの予期しない終端に達しました。 |
MessageNotReadableException | 書き込み専用モードのペイロードから情報を読み取ろうとしました。 |
public int readBytes(byte[] value) throws JMSException
バイトストリームからバイト配列を読み取ります。バイトストリームの長さより配列valueの長さが短い場合,配列valueの長さまでのバイトストリームを読み取ることができます。残りのバイトストリームも再度メソッドを発行することによって配列valueの長さまで読み取ることができます。バイトストリームの長さより配列valueの長さが長い場合,バイトストリームをすべて読み取ることができます。
このとき,読み取られる総バイト数を示す戻り値は,配列valueの長さよりも短くなり,バイトストリームから読み取るバイトが残っていないことを表します。バイトストリームからさらに読み取りを実行すると,-1を返します。
引数名 | 説明 |
---|---|
value | データの読み取り先のバッファ |
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの読み取りに失敗しました。 |
MessageNotReadableException | 書き込み専用モードのペイロードから情報を読み取ろうとしました。 |
public int readBytes(byte[] value, int length) throws JMSException
バイトストリームの一部を読み取ります。
引数名 | 説明 |
---|---|
value | データの読み取り先のバッファ |
length | 読み取るバイト数(value.length以下) |
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの読み取りに失敗しました。 |
MessageNotReadableException | 書き込み専用モードのペイロードから情報を読み取ろうとしました。 |
public char readChar() throws JMSException
バイトストリームからUnicode文字値を読み取ります。
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの読み取りに失敗しました。 |
MessageEOFException | バイトストリームの予期しない終端に達しました。 |
MessageNotReadableException | 書き込み専用モードのペイロードから情報を読み取ろうとしました。 |
public double readDouble() throws JMSException
バイトストリームからdouble値を読み取ります。
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの読み取りに失敗しました。 |
MessageEOFException | バイトストリームの予期しない終端に達しました。 |
MessageNotReadableException | 書き込み専用モードのペイロードから情報を読み取ろうとしました。 |
public float readFloat() throws JMSException
バイトストリームからfloat値を読み取ります。
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの読み取りに失敗しました。 |
MessageEOFException | バイトストリームの予期しない終端に達しました。 |
MessageNotReadableException | 書き込み専用モードのペイロードから情報を読み取ろうとしました。 |
public int readInt() throws JMSException
バイトストリームから符号付き32ビット整数を読み取ります。
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの読み取りに失敗しました。 |
MessageEOFException | バイトストリームの予期しない終端に達しました。 |
MessageNotReadableException | 書き込み専用モードのペイロードから情報を読み取ろうとしました。 |
public long readLong() throws JMSException
バイトストリームから符号付き64ビット整数を読み取ります。
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの読み取りに失敗しました。 |
MessageEOFException | バイトストリームの予期しない終端に達しました。 |
MessageNotReadableException | 書き込み専用モードのペイロードから情報を読み取ろうとしました。 |
public short readShort() throws JMSException
バイトストリームから符号付き16ビット数を読み取ります。
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの読み取りに失敗しました。 |
MessageEOFException | バイトストリームの予期しない終端に達しました。 |
MessageNotReadableException | 書き込み専用モードのペイロードから情報を読み取ろうとしました。 |
public int readUnsignedByte() throws JMSException
バイトストリームから符号なし8ビット数を読み取ります。
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの読み取りに失敗しました。 |
MessageEOFException | バイトストリームの予期しない終端に達しました。 |
MessageNotReadableException | 書き込み専用モードのペイロードから情報を読み取ろうとしました。 |
public int readUnsignedShort() throws JMSException
バイトストリームから符号なし16ビット数を読み取ります。
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの読み取りに失敗しました。 |
MessageEOFException | バイトストリームの予期しない終端に達しました。 |
MessageNotReadableException | 書き込み専用モードのペイロードから情報を読み取ろうとしました。 |
public java.lang.String readUTF() throws JMSException
修正UTF-8形式を使用してエンコードされた文字列をバイトストリームから読み取ります。一度の発行で読み取られる文字列は65535バイトまでです。
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの読み取りに失敗しました。 |
MessageEOFException | バイトストリームの予期しない終端に達しました。 |
MessageNotReadableException | 書き込み専用モードのペイロードから情報を読み取ろうとしました。 |
public void reset() throws JMSException
ペイロードを書き込み専用モードから読み取り専用モードに移行してから,バイトストリームを先頭に再配置します。
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージのリセットに失敗しました。 |
MessageFormatException | メッセージ形式不正が原因でメッセージのリセットに失敗しました。 |
public void writeBoolean(boolean value) throws JMSException
booleanをバイトストリームに1バイト値として書き込みます。
引数名 | 説明 |
---|---|
value | 書き込まれるboolean値 |
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの書き込みに失敗しました。 |
MessageNotWriteableException | 読み取り専用モードのペイロードに情報を書き込もうとしました。 |
public void writeByte(byte value) throws JMSException
byteをバイトストリームに1バイト値として書き込みます。
引数名 | 説明 |
---|---|
value | 書き込まれるbyte値 |
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの書き込みに失敗しました。 |
MessageNotWriteableException | 読み取り専用モードのペイロードに情報を書き込もうとしました。 |
public void writeBytes(byte[] value) throws JMSException
バイト配列をバイトストリームに書き込みます。
引数名 | 説明 |
---|---|
value | 書き込まれるバイト配列 |
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの書き込みに失敗しました。 |
MessageNotWriteableException | 読み取り専用モードのペイロードに情報を書き込もうとしました。 |
public void writeBytes(byte[] value, int offset, int length)
throws JMSException
バイト配列の一部をバイトストリームに書き込みます。
引数名 | 説明 |
---|---|
value | 書き込まれるバイト配列値 |
offset | バイト配列内の初期オフセット |
length | 書き込まれるバイト数 |
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの書き込みに失敗しました。 |
MessageNotWriteableException | 読み取り専用モードのペイロードに情報を書き込もうとしました。 |
public void writeChar(char value) throws JMSException
上位バイトを先頭とする2バイト値として,char型引数をバイトストリームに書き込みます。
引数名 | 説明 |
---|---|
value | 書き込まれるchar値 |
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの書き込みに失敗しました。 |
MessageNotWriteableException | 読み取り専用モードのペイロードに情報を書き込もうとしました。 |
public void writeDouble(double value) throws JMSException
Double.doubleToLongBits()メソッドを使用してdouble型引数をlongに変換し,上位バイトを先頭とする8バイトとして,long値をバイトストリームに書き込みます。
引数名 | 説明 |
---|---|
value | 書き込まれるdouble値 |
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの書き込みに失敗しました。 |
MessageNotWriteableException | 読み取り専用モードのペイロードに情報を書き込もうとしました。 |
public void writeFloat(float value) throws JMSException
Float.floatToIntBits()メソッドを使用してfloat型引数をintに変換し,上位バイトを先頭とする4バイトとして,int値をバイトストリームに書き込みます。
引数名 | 説明 |
---|---|
value | 書き込まれるfloat値 |
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの書き込みに失敗しました。 |
MessageNotWriteableException | 読み取り専用モードのペイロードに情報を書き込もうとしました。 |
public void writeInt(int value) throws JMSException
上位バイトを先頭とする4バイト値として,int型引数をバイトストリームに書き込みます。
引数名 | 説明 |
---|---|
value | 書き込まれるint値 |
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの書き込みに失敗しました。 |
MessageNotWriteableException | 読み取り専用モードのペイロードに情報を書き込もうとしました。 |
public void writeLong(long value) throws JMSException
上位バイトを先頭とする8バイト値として,long型引数をバイトストリームに書き込みます。
引数名 | 説明 |
---|---|
value | 書き込まれるlong値 |
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの書き込みに失敗しました。 |
MessageNotWriteableException | 読み取り専用モードのペイロードに情報を書き込もうとしました。 |
public void writeObject(java.lang.Object value) throws JMSException
オブジェクトをバイトストリームに書き込みます。引数に設定できる型はオブジェクト化されたプリミティブオブジェクト型(Integer,DoubleおよびLongなど),Stringオブジェクトおよびバイト配列だけです。
引数名 | 説明 |
---|---|
value | 書き込まれるJavaプログラミング言語のオブジェクト(Javaオブジェクト) |
例外クラス | 説明 |
---|---|
java.lang.NullPointerException | 引数の値がnullなので,ペイロードの書き込みに失敗しました。 |
JMSException | 内部エラーのためにJMSプロバイダがメッセージの書き込みに失敗しました。 |
MessageFormatException | 引数の型が無効なためペイロードの書き込みに失敗しました。 |
MessageNotWriteableException | 読み取り専用モードのペイロードに情報を書き込もうとしました。 |
public void writeShort(short value) throws JMSException
上位バイトを先頭とする2バイト値として,short型引数をバイトストリームに書き込みます。
引数名 | 説明 |
---|---|
value | 書き込まれるshort値 |
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの書き込みに失敗しました。 |
MessageNotWriteableException | 読み取り専用モードのペイロードに情報を書き込もうとしました。 |
public void writeUTF(java.lang.String value) throws JMSException
マシンに依存しないUTF-8エンコーディング形式を使用して,文字列をバイトストリームに書き込みます。一度の発行で書き込まれる文字列は65535バイトまでです。
引数名 | 説明 |
---|---|
value | 書き込まれるString型の値 |
例外クラス | 説明 |
---|---|
JMSException | 内部エラーのためにJMSプロバイダがメッセージの書き込みに失敗しました。 |
MessageNotWriteableException | 読み取り専用モードのペイロードに情報を書き込もうとしました。 |