2012-05-11 16 views
2

私は私のWebアプリケーションでメッセージ駆動型Beanを使用しようとしているが、毎回それは私に、この例外がスローされます。いくつかの研究の後Glassfishのメッセージ駆動型Beanのメッセージサイズ

com.sun.messaging.jmq.jmsserver.util.BrokerException: [B4122]: Can not add message 1-127.0.1.1(b0:1a:c1:66:46:a9)-1-1336769823653 to destination PhysicalQueue [Queue]. The message size of 24968685 bytes is larger than the destination individual message byte limit (maxBytesPerMsg) of 10485760 bytes. 

、私がいることを発見しましたデフォルトの制限は-1なので、無制限でなければなりません。

私はGlassfishの管理コンソールでどこにでも見えましたが、この制限を削除する方法を見つけました。 「新しいJMSリソース」ウィザードでも、このパラメータについては何も問いません。

これを修正する方法はありますか?

答えて

2

メッセージが大きすぎるのはなぜですか?どのようにこれをやっているのか再考したいかもしれません。

....

あなたはimqcmdコマンド経由で更新することができます。変更する値はMaxBytesPerMsgです。

SunGlassFish MessageQueue 4.4 Administration Guideまたは4.2 guideより。

更新物理的送信先のプロパティ

サブimqcmdの更新DSTは、物理 先の指定されたプロパティの値を変更:

imqcmd update dst -t destType -n destName 
        -o property1=value1 [ [-o property2=value2] ... ] 

に列挙されたもののいずれかを含むことができ、更新される特性は表18-1(isLocalOnlyプロパティは例外ですが、宛先が作成されると変更できません)。例えば

、次のコマンドは、2000年に1000キュー 先curlyQueueとmaxNumMsgsプロパティのmaxBytesPerMsgプロパティを変更します。

imqcmd update dst -t q -n curlyQueue -u admin 
        -o maxBytesPerMsg=1000 
        -o maxNumMsgs=2000 
+0

私は、問題はそれが見えたものの大きいことを推測します。 私はちょうど2列の 'List'を持っています!どうしてそんなに大きいの? – StepTNT

+0

メッセージを構成するコードを投稿する必要があります。しかしそれは別の質問です:) – Preston

関連する問題