Currently, in master and 5.1, WebSphereExtendedJtaPlatform will not work for any tasks that use a DdlTransactionIsolatorJtaImpl.
The problem is that DdlTransactionIsolatorJtaImpl calls TransactionManager#suspend and #resume on the TransactionManager returned by WebSphereExtendedJtaPlatform#locateTransactionManager, which throws UnsupportedOperationException. I see that Christian suggested a custom JtaPlatform to work around this issue.[1], which is basically the same as WebSphereJtaPlatform for WebSphereEnvironment#WS_5_1. If com.ibm.ws.Transaction.TransactionManagerFactory really has been working since 5.1, it should be safe to update WebSphereExtendedJtaPlatform as Christian proposed. That would be the simplest, but, I see that com.ibm.ws.Transaction.TransactionManagerFactory is not listed in WebSphere's Application Server API. [2] I see that WebSphereExtendedJtaPlatform uses classes in com.ibm.websphere.jtaextensions, which are listed in WebSphere's Application Server API. I think it would be good thing for Hibernate to only depend on the API. Unfortunately, I see that the API still does not expose the TransactionManager. Is there any way that WebSphereExtendedJtaPlatform$TransactionManagerAdapter could implement #suspend and #resume without referring to com.ibm.ws.Transaction.TransactionManagerFactory? I suspect not, but figured I'd ask. Other than that, alternatives I see are: 1) Deprecate WebSphereExtendedJtaPlatform in favor of WebSphereJtaPlatform; 2) Change WebSphereExtendedJtaPlatform as Christian suggested (using com.ibm.ws.Transaction.TransactionManagerFactory); Other ideas? Thanks, Gail [1] https://hibernate.atlassian.net/browse/HHH-11606?focusedCommentId=92405&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-92405 [2] https://www.ibm.com/support/knowledgecenter/en/SSEQTP_8.5.5/com.ibm.websphere.javadoc.doc/web/apidocs/index.html _______________________________________________ hibernate-dev mailing list hibernate-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/hibernate-dev