2015-11-04 147 views
0

我在Weblogic服務器中從日誌中獲得以下異常,它絕對是weblogic內部的東西,但不確定應用程序的哪一部分weblogic正在嘗試存檔,你知道它爲什麼會發生嗎?weblogic服務器中的異常 - 非法嘗試調用EJBContext.setRollbackOnly()

<Nov 4, 2015 10:32:07 AM CST> <Info> <EJB> <BEA-010213> <Message-Driven EJB: WLIArchiverSchedulerMDB's transaction was rolledback. The transaction details are: Xid=BEA1-0482AE5EBACD7EBCD75C(5835637),Status=Rolled back. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException],numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=0,seconds left=60,XAServerResourceInfo[JMS_cgJMSStore]=(ServerResourceInfo[JMS_cgJMSStore]=(state=rolledback,assigned=msolvint101-prd01-z),xar=JMS_cgJMSStore,re-Registered = false),XAServerResourceInfo[cgPool]=(ServerResourceInfo[cgPool]=(state=rolledback,assigned=msolvint101-prd01-z),xar=cgPool,re-Registered = false),SCInfo[m6intdomain+msolvint101-prd01-z]=(state=rolledback),properties=({ISOLATION LEVEL=2}),local properties=({[email protected]}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=msolvint101-prd01-z+msolvint101-prd01-z.tds.local:7001+m6intdomain+t3+, XAResources={JMS_FileStore, JMS_pluginStore, cgPool, NetExpert Pool, MSLVPool, JMS_cgJMSStore, MSLVwliPool, bpmArchPool},NonXAResources={})],CoordinatorURL=msolvint101-prd01-z+msolvint101-prd01-z.tds.local:7001+m6intdomain+t3+).> 
<Nov 4, 2015 10:32:07 AM CST> <Warning> <EJB> <BEA-010065> <MessageDrivenBean threw an Exception in onMessage(). The exception was: 
java.lang.IllegalStateException: [EJB:010158]Illegal attempt to call EJBContext.setRollbackOnly() from an EJB that was not participating in a transaction.. 
java.lang.IllegalStateException: [EJB:010158]Illegal attempt to call EJBContext.setRollbackOnly() from an EJB that was not participating in a transaction. 
     at weblogic.ejb20.internal.BaseEJBContext.setRollbackOnly(BaseEJBContext.java:348) 
     at weblogic.ejb20.internal.MessageDrivenEJBContextImpl.setRollbackOnly(MessageDrivenEJBContextImpl.java:56) 
     at com.bea.wli.management.archiving.WLIArchiverSchedulerMDB.onMessage(WLIArchiverSchedulerMDB.java:164) 
     at com.bea.wli.management.archiving.WLIArchiverSchedulerMDB.onMessage(WLIArchiverSchedulerMDB.java:75) 
     at weblogic.ejb20.internal.MDListener.execute(MDListener.java:400) 
     at weblogic.ejb20.internal.MDListener.transactionalOnMessage(MDListener.java:333) 
     at weblogic.ejb20.internal.MDListener.onMessage(MDListener.java:298) 
     at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:2686) 
     at weblogic.jms.client.JMSSession.execute(JMSSession.java:2598) 
     at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224) 
     at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183) 

回答

0

確保您的MDB transaction attribute設置爲必需,而不是爲NotSupported

+0

我們沒有在我們的應用程序中使用MDB的,如果你看看日誌,這些都是一些內部weblogic的錯誤,我們都對於造成這些例外的原因一無所知。 – Zeus

+0

您不使用Weblogic消息傳遞(JMS)嗎? – Franck

+0

我們使用jms,但是,它們由Java消費者和生產者處理,但不是MDB。您使用的WebLogic Integration - Business Connect是否使用 – Zeus

相關問題