Ошибка при получении UserTransaction из EJBContext, выбросить IllegalStateException - PullRequest
0 голосов
/ 24 августа 2018

Я пытаюсь развернуть приложение в Websphere 8.5, приложение развертывается правильно, но при попытке возразить UserTransaction из EJBContext я получаю исключение.

This is my code:
@Stateless
@TransactionManagement(TransactionManagementType.BEAN)
@TransactionAttribute(TransactionAttributeType.SUPPORTS)
public class FooManagerBean implements FooManager {

    @Resource
    private EJBContext context;

    public FooManagerBean() {
    }

    //other methods

    /**
     * {@inheritDoc}
     */
    @Override
    @TransactionAttribute(TransactionAttributeType.REQUIRED)
    public FooResponseDTO fooMethod(FooRequestDTO fooRequest) throws Exception {

        final UserTransaction userTx = context.getUserTransaction(); <- EXCEPTION!

        //other code & return

        return ...;
    }

А это мой журнал:

[24/08/18 17: 05: 41: 595 CEST] 000000b0 BusinessExcep E CNTR0020E: EJB не генеральный, но исключительный (не декларативный) метод "fooMethod" ан эль бин Msgstr "BeanId (xxxxxxx # xxxxx.jar # FooManagerBean, null)". Датос де ла excepción: java.lang.IllegalStateException at com.ibm.ejs.container.CMStatelessBeanO.getUserTransaction (CMStatelessBeanO.java:79) в com.xxx ..... xxx.FooManagerBean.fooMethod (FooManagerBean.java:83) в sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) в sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:60) в sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:37) в java.lang.reflect.Method.invoke (Method.java:611) в com.ibm.ejs.container.EJSContainer.invokeProceed (EJSContainer.java:5730) в com.ibm.ejs.container.interceptors.InvocationContextImpl.proceed (InvocationContextImpl.java:568) в sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) в sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:60) в sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:37) в java.lang.reflect.Method.invoke (Method.java:611) в com.ibm.ejs.container.interceptors.InterceptorProxy.invokeInterceptor (InterceptorProxy.java:227) в com.ibm.ejs.container.interceptors.InvocationContextImpl.proceed (InvocationContextImpl.java:548) в com.ibm.ejs.container.interceptors.InvocationContextImpl.doAroundInvoke (InvocationContextImpl.java:229) на com.ibm.ejs.container.EJSContainer.invoke (EJSContainer.java:5621) в com.xxx ..... xxx.EJSLocal0SLFooManagerBean_7ca28fb0.fooMethod (EJSLocal0SLFooManagerBean_7ca28fb0.java) в com.xxx ..... xxx..FooService.fooMethod (FooService.java:37) в sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) в sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:60) в sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:37) в java.lang.reflect.Method.invoke (Method.java:611) в com.sun.jersey.spi.container.JavaMethodInvokerFactory $ 1.invoke (JavaMethodInvokerFactory.java:60) в com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider $ ResponseOutInvoker._dispatch (AbstractResourceMethodDispatchProvider.java:205) в com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch (ResourceJavaMethodDispatcher.java:75) в com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept (HttpMethodRule.java:288) в com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept (RightHandPathRule.java:147) в com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept (ResourceClassRule.java:108) в com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept (RightHandPathRule.java:147) в com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept (RootResourceClassesRule.java:84) в com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest (WebApplicationImpl.java:1469) в com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest (WebApplicationImpl.java:1400) в com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest (WebApplicationImpl.java:1349) в com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest (WebApplicationImpl.java:1339) в com.sun.jersey.spi.container.servlet.WebComponent.service (WebComponent.java:416) в com.sun.jersey.spi.container.servlet.ServletContainer.service (ServletContainer.java:537) в сom.sun.jersey.spi.container.servlet.ServletContainer.service (ServletContainer.java:708) в javax.servlet.http.HttpServlet.service (HttpServlet.java:668) в com.ibm.ws.webcontainer.servlet.ServletWrapper.service (ServletWrapper.java:1227) в com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest (ServletWrapper.java:776) в com.ibm.ws.webcontainer.servlet.ServletWrapper.handjRequ458) по адресу com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest (ServletWrapperImpl.java:178) по адресу com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget (WebAppFilib.in.in)..webcontainer.filter.WebAppFilterChain.doFilter (WebAppFilterChain.java:97) при org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:76) в com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter (FilterInstanceWrapper.java: 195) на com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter (WebAppFilterChain.java:91) на com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter (WebAppFilterManager.java:928) на com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters (WebAppFilterManager.java:1025) в com.ibm.wppAweJava: 3761) на com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest (WebGroup.java:304) на com.ibm.ws.webcontainer.WebContainer.handleRequest (WebContainer.java:976) на com.ibm.ws.webcontainer.WSWebContainer.handleRequest (WSWebContainer.java:1662) на com.ibm.ws.webcontainer.channel.WCChannelLink.ready (WCChannelLink.java:200) на com.ibm.ws.http.channel.inbound.impl.Htp.handleDiscrimination (HttpInboundLink.java:459) на com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest (HttpInboundLink.java:526) на com.ibm.ws.http.channel.inbound.implinktt..processRequest (HttpInboundLink.java:312) на com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready (HttpInboundLink.java:283) на com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCall«.java: 175) на com.ibm.io.async.AbstractAsyncFuture.invokeCallback (AbstractAsyncFuture.java:217) на com.ibm.io.async.AsyncChannelFuture.fireCompletionActions (AsyncChannelFuture.java:161) на com.ibm.ioasync.AsyncFuture.completed (AsyncFuture.java:138) на странице com.ibm.io.async.ResultHandler.complete (ResultHandler.java:204) на странице com.ibm.io.async.ResultHandler.runEventProcessingLoop (ResultHandler.java:7)на com.ibm.io.async.ResultHandler $ 2.run (ResultHandler.java:905) на com.ibm.ws.util.ThreadPool $ Worker.run (ThreadPool.java:1862)

Дополнительная трассировка:

javax.ejb.EJBException: см. Вложенное исключение;Вложенное исключение: java.lang.IllegalStateException на com.ibm.ejs.container.util.ExceptionUtil.EJBException (ExceptionUtil.java:475) ~ [com.ibm.ws.runtime.jar: na] на com.ibm.ejs.container.util.ExceptionUtil.EJBException (ExceptionUtil.java:365) ~ [com.ibm.ws.runtime.jar: na] в com.ibm.ejs.container.BusinessExceptionMappingStrategy.mapException (BusinessExceptionMappingStrategy.java:392) ~ [com.ibm.ws.runtime.jar: na] at com.ibm.ejs.container.BusinessExceptionMappingStrategy.setUncheckedException (BusinessExceptionMappingStrategy.java:554) ~ [com.ibm.ws.runtime.jar: na] в com.ibm.ejs.container.xxx ..... xxx..FooService.fooMethod (FooService.java:37) вsun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) ~ [na: 1.6.0] в sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:60) ~ [na: 1.6.0] в sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:37) ~ [na: 1.6.0] в java.lang.reflect.Method.invoke (Method.java:611) ~ [na: 1.6.0] в com.sun.jersey.spi.container.JavaMethodInvokerFactory $ 1.invoke (JavaMethodInvokerFactory.java:60) [jersey-server-1.11.jar: 1.11] в com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider $ ResponseOutInvoker._dispatch (AbstractResourceMethodDispatchProvider.java:205) [jersey-server-1.11.jar: 1.11] в com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch (ResourceJavaMethodDispatcher.java:75) [jersey-server-1.11.jar: 1.11] в com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept (HttpMethodRule.java:288) [jersey-server-1.11.jar: 1.11] в com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept (RightHandPathRule.java:147) [jersey-server-1.11.jar: 1.11] в com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept (ResourceClassRule.java:108) [jersey-server-1.11.jar: 1.11] в com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept (RightHandPathRule.java:147) [jersey-server-1.11.jar: 1.11] в com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept (RootResourceClassesRule.java:84) [jersey-server-1.11.jar: 1.11] в com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest (WebApplicationImpl.java:1469) [jersey-server-1.11.jar: 1.11] в com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest (WebApplicationImpl.java:1400) [jersey-server-1.11.jar: 1.11] в com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest (WebApplicationImpl.java:1349) [jersey-server-1.11.jar: 1.11] в com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest (WebApplicationImpl.java:1339) [jersey-server-1.11.jar: 1.11] в com.sun.jersey.spi.container.servlet.WebComponent.service (WebComponent.java:416) [Джерси-сервлет-1.11.jar: 1.11] в com.sun.jersey.spi.container.servlet.ServletContainer.service (ServletContainer.java:537) [Джерси-сервлет-1.11.jar: 1.11] в com.sun.jersey.spi.container.servlet.ServletContainer.service (ServletContainer.java:708) [Джерси-сервлет-1.11.jar: 1.11] в javax.servlet.http.HttpServlet.service (HttpServlet.java:668) [javax.j2ee.servlet.jar: na] в com.ibm.ws.webcontainer.servlet.ServletWrapper.service (ServletWrapper.java:1227) [com.ibm.ws.webcontainer.jar: na] в com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest (ServletWrapper.java:776) [com.ibm.ws.webcontainer.jar: na] в com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest (ServletWrapper.java:458) [com.ibm.ws.webcontainer.jar: na] в com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest (ServletWrapperImpl.java:178) [com.ibm.ws.webcontainer.jar: na] в com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget (WebAppFilterChain.java:136) [com.ibm.ws.webcontainer.jar: na] в com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter (WebAppFilterChain.java:97) [com.ibm.ws.webcontainer.jar: na] в org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:76) [spring-web-3.1.0.RELEASE.jar: 3.1.0.RELEASE] в com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter (FilterInstanceWrapper.java:195) [com.ibm.ws.webcontainer.jar: na] в com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter (WebAppFilterChain.java:91) [com.ibm.ws.webcontainer.jar: na] в com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter (WebAppFilterManager.java:928) [com.ibm.ws.webcontainer.jar: na] в com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters (WebAppFilterManager.java:1025)[com.ibm.ws.webcontainer.jar: na] на com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest (CacheServletWrapper.java:87) [com.ibm.ws.webcontainer.jar: na] на com.ibm.ws.webcontainer.WebContainer.handleRequest (WebContainer.java:909) [com.ibm.ws.webcontainer.jar: na] в com.ibm.ws.webcontainer.WSWebContainer.handleRequest (WSWebContainer.java:1662 [com.ibm.ws.webcontainer.jar: na] на com.ibm.ws.webcontainer.channel.WCChannelLink.ready (WCChannelLink.java:200) [com.ibm.ws.webcontainer.jar: na] на com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination (HttpInboundLink.java:459) [com.ibm.ws.runtime.jar: na] в com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest (HttpInboundLink.java:526) [com.ibm.ws.runtime.jar: na] at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest (HttpInboundLink.java:312) [com.ibm.ws.runtime.jar: na] at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready (HttpInboundLink.java:283) [com.ibm.ws.runtime.jar: na]по адресу com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators (NewConnectionInitialReadCallback.java:214) [na: CCX.CF [o1103.02]] по адресу com.ibm.ws.tcp.channelReneckitN.complete (NewConnectionInitialReadCallback.java:113) [na: CCX.CF [o1103.02]] на com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted (AioReadCompletionListener.java:175w). com.ib.mruntime.jar: na] в com.ibm.io.async.AbstractAsyncFuture.invokeCallback (AbstractAsyncFuture.java:217) [com.ibm.ws.runtime.jar: na] в com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161) [com.ibm.ws.runtime.jar: na] на com.ibm.io.async.AsyncFuture.completed (AsyncFuture.java:138) [com.ibm.ws.runtime.jar:na] at com.ibm.io.async.ResultHandler.complete (ResultHandler.java:204) [com.ibm.ws.runtime.jar: na] at com.ibm.io.async.ResultHandler.runEventProcessingLoop (ResultHandler.java): 775) [com.ibm.ws.runtime.jar: na] at com.ibm.io.async.ResultHandler $ 2.run (РезультатHandler.java:905) [com.ibm.ws.runtime.jar: na] at com.ibm.ws.util.ThreadPool $ Worker.run (ThreadPool.java:1862) [com.ibm.ws.runtime.jar: na] Вызывается: java.lang.IllegalStateException: null at com.ibm.ejs.container.CMStatelessBeanO.getUserTransaction (CMStatelessBeanO.java:79) ~ [com.ibm.ws.runtime.jar: na] в com.xxx..... xxx.FooManagerBean.fooMethod (FooManagerBean.java:83) ~ [xxxxx.jar: na] в sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) ~ [na: 1.6.0] в sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:60) ~ [na: 1.6.0] at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:37) ~ [na: 1.6.0g.ref. Java.invoke (Method.java:611) ~ [na: 1.6.0] на com.ibm.ejs.container.EJSContainer.invokeProceed (EJSContainer.java:5730) ~ [com.ibm.ws.runtime.jar: na] вcom.ibm.ejs.container.interceptors.InvocationContextImpl.proceed (InvocationContextImpl.java:568) ~ [na: na] at sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) ~ [na: 1.6.0] at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:60) ~ [na: 1.6.0] at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:37: 37)] на java.lang.reflect.Method.invoke (Method.java:611) ~ [na: 1.6.0] на com.ibm.ejs.container.interceptors.InterceptorProxy.invokeInterceptor (InterceptorProxy.java:227) ~ [на: na] at com.ibm.ejs.container.interceptors.InvocationContextImpl.proceed (InvocationContextImpl.java:548) ~ [na: na] at com.ibm.ejs.container.interceptors.InvocationContextImpl.doAroundInvokeImpl.Contej) ~ [na: na] at com.ibm.ejs.container.EJSContainer.invoke (EJSContainer.java:5621) ~ [com.ibm.ws.runtime.jar: na] ... пропущено 52 общих кадра

И содержимое текстового файла, сгенерированного сервером:

[24/08/18 13: 59: 04: 518 CEST] FFDC Исключение: java.lang.IllegalStateException SourceId: com.ibm.ejs.container.BusinessExceptionMappingStrategy.setUncheckedException ProbeId: 506 Репортер: com.ibm.ejs.container.BusinessExceptionMappingStrategy@f138ac6b java.lang.IllegalStateException в com.ibm.ejs.container.CMStatelessBeanO.getUserTransaction (CMStatelessBeanO.java:79) ... (снова то же самое)

У меня есть источники данных, объявленные на сервере websphere, которые правильно восстановлены в приложении. Я что-то упускаю для настройки в веб-сфере?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...