ページの先頭行へ戻る
Interstage Application Server V12.2.0 J2EE ユーザーズガイド(旧版互換)
FUJITSU Software

24.13.4 パッケージjavax.jmsのAPI一覧(その4)

インタフェース名/
クラス名

メソッド

サポート

MessageConsumer

close()

getMessageListener()

getMessageSelector()

receive()

receive(long timeout)

(注1)

receiveNoWait()

(注2)

setMessageListener(MessageListener listener)

MessageListener

onMessage(Message message)

MessageProducer

close()

getDeliveryMode()

getDestination()

(注3)

getDisableMessageID()

getDisableMessageTimestamp()

getPriority()

getTimeToLive()

send(Destination destination, Message message)

(注3)

send(Destination destination, Message message, int deliveryMode, int priority, long timeToLive)

(注3)

send(Message message)

(注3)

send(Message message, int deliveryMode, int priority, long timeToLive)

(注3)

setDeliveryMode(int deliveryMode)

(注4

setDisableMessageID(boolean value)

setDisableMessageTimestamp(boolean value)

setPriority(int defaultPriority)

setTimeToLive(long timeToLive)

(注5

ObjectMessage

getObject()

setObject(java.io.Serializable object)

○:サポート
×:未サポート

注1)メッセージの待ち合わせを行う必要がない場合は、receive()メソッドではなく、receiveNoWait()メソッドを使用して、メッセージの待ち合わせを行わない運用を行ってください。
receive()メソッドを使用すると、メッセージの受信を待合わせて、受信タイムアウト時間に達すると、nullで復帰します。受信タイムアウト時間は、receive()メソッドの指定値、およびイベントチャネルの動作環境の設定値「メッセージ(イベントデータ)の待ち合わせ時間」により以下のように算出します。なお、イベントチャネル動作環境の設定方法については、“23.1.4 イベントチャネル動作環境の変更”を参照してください。

受信タイムアウト時間 = メッセージの待ち合わせ時間 × n
n = receive()メソッドの指定値 / (メッセージの待ち合わせ時間 × 1000)
n: 小数点以下、整数に切り上げ

receive()メソッドの指定値“50000ミリ秒”、メッセージの待ち合わせ時間“40秒”の場合

n = 50000 / (40 × 1000)≒ 2 (小数点以下、整数に切り上げ)
受信タイムアウト時間 = 40 × 2 = 80(秒)

注2)受信できるメッセージがない場合は、nullで即時に復帰します。

注3)JMS1.1規約で追加されました。

4イベントチャネルの配信モードおよび同一モードだけをサポートします。

5timeToLiveは、ミリ秒単位までサポートします。しかし、イベントチャネルのメッセージタイムアウト時間の精度は秒単位であるため、timeToLive値は最も近い値に丸められます。