我有一个testCase,它有一个模拟响应测试步骤,端点正在从weblogic jms队列中读取jms:// WLS :: - :: queue_SouthboundOutboundQueue。
当来自weblogic的消息达到“10000000”字节时,此测试步骤将停止在运行测试用例时使用该消息。
尝试从像这样的groovy脚本中读取队列:
def jmsEndPoint = new JMSEndpoint("jms://WLS::-::queue_SouthboundOutboundQueue");
log.debug(jmsEndPoint.sessionName);
def hermes = HermesUtils.getHermes(context.testCase.testSuite.project, jmsEndPoint.sessionName);
def jmsConnectionHolder = new JMSConnectionHolder(jmsEndPoint,hermes,false,null,null,null);
Session session = jmsConnectionHolder.getSession();
Queue queue = jmsConnectionHolder.getQueue(jmsConnectionHolder.getJmsEndpoint().getReceive());
MessageConsumer consumer = session.createConsumer(queue);
Message message = null;
def count = 0;
while((message = consumer.receiveNoWait()) != null){
//error happens here when it is consumed
count++;
}
阅读大消息时groovy引发的错误
weblogic.jms.common.JMSException: weblogic.messaging.dispatcher.DispatcherException: weblogic.rjvm.PeerGoneException :;嵌套异常是: weblogic.socket.MaxMessageSizeExceededException:传入的消息 大小:'10000080'字节超出配置的最大值:'10000000' 协议的字节:'t3'错误在第22行
PS:Weblogic正在使用大消息,因为我在其中添加了-Dweblogic.MaxMessageSize = 2000000000。还尝试在soapui和hermes sh以及bat starter文件中添加此参数,但没有任何效果。