IBM Support

PK97370; 7.0.0.7: transaction qualifiers missing on Event Server

Download


Abstract

Application Server (and EJB specifications) prohibits a method that has not "required" or "requiresNew" as transaction qualifier to mark the transaction for rollback.

Download Description

PK97370 resolves the following problem:

USERS AFFECTED:

All users of IBM WebSphere Application Server V6.1 and V7.0 that also have Common Event Infrastructure (CEI) deployed on their environment.

PROBLEM DESCRIPTION:

Application Server (and EJB specifications for that matter) prohibits a method that has not "required" or "requiresNew" as transaction qualifier to mark the transaction for rollback.

PROBLEM SUMMARY

The following exception is thrown:

[7/30/09 16:16:04:076 CEST] 0000003c ExceptionUtil ECNTR0020E: EJB threw an unexpected (non-declared) exception during invocation of method "purgeEvents" on bean "BeanId(EventService#DataStoreEjb.jar#DefaultDataStoreEJB, null)".

Exception data: java.lang.IllegalStateException: setRollbackOnly can not be called from a TX SUPPORTS method at com.ibm.ejs.container.BeanO.setRollbackOnly(BeanO.java:1182)

at com.ibm.ejs.container.StatelessBeanO.setRollbackOnly(StatelessBeanO.java:656)

at com.ibm.events.datastore.impl.DefaultDataStoreEJBBean.purgeEvent s(DefaultDataStoreEJBBean.java:542)

at com.ibm.events.datastore.EJSLocalStatelessDefaultDataStoreEJB_6b454685.purgeEvents(Unknown Source)

at com.ibm.events.access.impl.EventAccessHelper.purgeBySelector(EventAccessHelper.java:716)

at com.ibm.events.access.impl.EventAccessEjb.purgeEvents(EventAccessEjb.java:448)

at com.ibm.events.access.EJSLocalStatelessEventAccessEjb_a71165bf.purgeEvents(Unknown Source)

at de.lvm.test.export.JMSTester.purgeEvents(JMSTester.java:295)

at de.lvm.test.export.JMSTester.doGet(JMSTester.java:228)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)

can be seen when eventPurge is called using CEI API and the caller is not in a transaction.

ERROR DESCRIPTION:

Transaction qualifiers are missing in the following EventServer app: EventServerEjb.jarMETA-INFejb-jar.xml EventAccessEjb -> purgeEvents method "required" + "requiresNew" transaction qualifiers are missing here but necessary otherwise Application Server prohibits the access for example, from rollback of current transaction.

RECOMMENDATION:

None

LOCAL FIX:

N/A

PROBLEM CONCLUSION:

Caller of Common Event Infrastructure event purge API method will always be in a transaction. If something goes wrong, the purge events method wants to mark the transaction for rollback.

The fix for this APAR is currently targeted for inclusion in Fix Packs 6.1.0.29 and 7.0.0.9. Please refer to the Recommended Updates page for delivery information:
http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980

Prerequisites

Please download the UpdateInstaller below to install this fix.

[{"PRLabel":"UpdateInstaller","PRLang":"US English","PRSize":"7250000","PRPlat":{"label":"AIX","code":"PF002"},"PRURL":"http://www.ibm.com/support/docview.wss?rs=180&uid=swg21205991"}]

Installation Instructions

Please review the readme.txt for detailed installation instructions.

[{"INLabel":"Readme","INLang":"US English","INSize":"9855","INURL":"ftp://public.dhe.ibm.com/software/websphere/appserv/support/fixes/PK97370/readme.txt"}]
On
[{"DNLabel":"7.0.0.7-WS-WAS-MultiOS-IFPK97370","DNDate":"12-17-2009","DNLang":"US English","DNSize":"6948","DNPlat":{"label":"AIX","code":"PF002"},"DNURL":"http://www.ibm.com/support/fixcentral/quickorder?fixids=7.0.0.7-WS-WAS-MultiOS-IFPK97370&product=ibm%2FWebSphere%2FWebSphere%20Application%20Server&source=dbluesearch","DNURL_FTP":null,"DDURL":null}]

Technical Support

Contact IBM Support using SR (http://www.ibm.com/software/support/probsub.html), visit the WebSphere Application Server Support Web site (http://www.ibm.com/software/webservers/appserv/was/support/), or contact 1-800-IBM-SERV (U.S. only).

[{"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"DB Connections\/Connection Pooling","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF012","label":"IBM i"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"7.0.0.7","Edition":"Base;Network Deployment;Single Server","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
15 June 2018

UID

swg24025526