我们收到了一个 JMS 错误,我们没有太多可处理的地方:
org.springframework.jms.UncategorizedJmsException:JMS处理过程中出现未分类异常;嵌套异常是 weblogic.jms.common.JMSException:[JMSClientExceptions:055039]发生系统错误。错误是 java.lang.NullPointerException;嵌套异常是 com.mywebsite.SendMessageSync(ProducerServices.java:131) 处的 java.lang.NullPointerException
at com.mywebsite.SendMessageSync(ProducerServices.java:115) at com.mywebsite.Producer.sendMessage(FormsCRRProducer.java:56) at com.mywebsite.Producer.useNewGetTemplateData(GenerateFormsManagerBean.java:522) at com.mywebsite.Producer.GenerateFormsManagerBean.doService(GenerateFormsManagerBean.java:114) at com.mywebsite.Producer.doServiceWrapper(AbstractManagerBean.java:175) at com.mywebsite.Producer.doServiceRequest(AbstractManagerBean.java:151) at com.mywebsite.processcontainer.AbstractServlet.doManagerBeanServiceAndPresentation(AbstractServlet.java:1911) at com.mywebsite.processunit.servlet.CportalParamServlet.doService(CportalParamServlet.java:107) at com.mywebsite.fw.processcontainer.AbstractServlet.service(AbstractServlet.java:983) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42) at com.mywebsite.processunit.filter.UploadMultipartFilter.doFilter(UploadMultipartFilter.java:28) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3229) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121) at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2002) at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1908) at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1362) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209) at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
我唯一的线索是代码中的第127行,此错误指示:
原因:weblogic.jms.common.JMSException:[JMSClientExceptions:055039]发生系统错误。错误是 java.lang.Nul lPointerException
at weblogic.jms.client.JMSSession.handleException(JMSSession.java:2853) at weblogic.jms.client.JMSConsumer.receive(JMSConsumer.java:629) at weblogic.jms.client.JMSConsumer.receive(JMSConsumer.java:488) at weblogic.jms.client.WLConsumerImpl.receive(WLConsumerImpl.java:155) at org.springframework.jms.core.JmsTemplate.doReceive(JmsTemplate.java:734) at org.springframework.jms.core.JmsTemplate.doReceive(JmsTemplate.java:706) at org.springframework.jms.core.JmsTemplate$9.doInJms(JmsTemplate.java:681) at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:447) at org.springframework.jms.core.JmsTemplate.receiveSelected(JmsTemplate.java:679) at org.springframework.jms.core.JmsTemplate.receiveSelectedAndConvert(JmsTemplate.java:784) at com.mywebsite.jms.service.ProducerServices.SendMessageSync(ProducerServices.java:127) ... 25 more
这是第 127 行:
try {
Thread.yield();
//line 127 below
status=(StatusMessageBean)getJmsTemplate.receiveSelectedAndConvert(statusDestination, "JMSCorrelationID='"+ producerMsg.getProcessID() +"'");
Thread.yield();
} catch (Exception e) {
Thread.yield();
loggingInterface.doErrorLogging(e.fillInStackTrace());
}
根据BEA 文档,我们应该就错误 055039 与 BEA 联系,但我想先在这里询问,然后再将其带给他们?
还有一些错误:
引起:java.lang.NullPointerException
at weblogic.jms.common.JMSVariableBinder$JMSCorrelationIDVariable.get(JMSVariableBinder.java:127) at weblogic.utils.expressions.Expression.evaluateExpr(Expression.java:271) at weblogic.utils.expressions.Expression.evaluateExpr(Expression.java:298) at weblogic.utils.expressions.Expression.evaluateBoolean(Expression.java:209) at weblogic.utils.expressions.Expression.evaluate(Expression.java:167) at weblogic.jms.common.JMSSQLFilter$Exp.evaluate(JMSSQLFilter.java:304) at weblogic.messaging.common.SQLFilter.match(SQLFilter.java:158) at weblogic.messaging.kernel.internal.MessageList.findNextVisible(MessageList.java:274) at weblogic.messaging.kernel.internal.QueueImpl.nextFromIteratorOrGroup(QueueImpl.java:441) at weblogic.messaging.kernel.internal.QueueImpl.nextMatchFromIteratorOrGroup(QueueImpl.java:350) at weblogic.messaging.kernel.internal.QueueImpl.get(QueueImpl.java:233) at weblogic.messaging.kernel.internal.QueueImpl.addReader(QueueImpl.java:1069) at weblogic.messaging.kernel.internal.ReceiveRequestImpl.start(ReceiveRequestImpl.java:178) at weblogic.messaging.kernel.internal.ReceiveRequestImpl.<init>(ReceiveRequestImpl.java:86) at weblogic.messaging.kernel.internal.QueueImpl.receive(QueueImpl.java:820) at weblogic.jms.backend.BEConsumerImpl.blockingReceiveStart(BEConsumerImpl.java:1172) at weblogic.jms.backend.BEConsumerImpl.receive(BEConsumerImpl.java:1383) at weblogic.jms.backend.BEConsumerImpl.invoke(BEConsumerImpl.java:1088) at weblogic.messaging.dispatcher.Request.wrappedFiniteStateMachine(Request.java:759) at weblogic.messaging.dispatcher.DispatcherImpl.dispatchAsyncInternal(DispatcherImpl.java:129) at weblogic.messaging.dispatcher.DispatcherImpl.dispatchAsync(DispatcherImpl.java:112) at weblogic.messaging.dispatcher.Request.dispatchAsync(Request.java:1046) at weblogic.jms.dispatcher.Request.dispatchAsync(Request.java:72) at weblogic.jms.frontend.FEConsumer.receive(FEConsumer.java:557) at weblogic.jms.frontend.FEConsumer.invoke(FEConsumer.java:806) at weblogic.messaging.dispatcher.Request.wrappedFiniteStateMachine(Request.java:759) at weblogic.messaging.dispatcher.DispatcherServerRef.invoke(DispatcherServerRef.java:276) at weblogic.messaging.dispatcher.DispatcherServerRef.handleRequest(DispatcherServerRef.java:141) at weblogic.messaging.dispatcher.DispatcherServerRef.access$000(DispatcherServerRef.java:36) at weblogic.messaging.dispatcher.DispatcherServerRef$2.run(DispatcherServerRef.java:112) ... 2 more
有任何想法吗?