"Exception thrown in non-transactional EJB invoke"

          When I throw an application exception from within a statless session bean which uses jdbs for DB Lookup Only I get
          "Exception thrown in non-transactional EJB invoke".
          As this is a llokup only I have no Transaction Management
          

Tao,
          > If your ejb method is in a transaction context, then you throw application
          exception, the container will try to commit the transaction.
          In the case of an application exception, the caller will be responsible for
          committing or rolling back the transaction. (A runtime exception will roll
          back the transaction automatically.) That is why, if you use CMT, that the
          EJB methods call from outside the EJB container (such as from a servlet)
          should never be able to throw runtime exceptions.
          Peace,
          Cameron Purdy
          Tangosol, Inc.
          http://www.tangosol.com
          +1.617.623.5782
          WebLogic Consulting Available
          "Tao Zhang" <[email protected]> wrote in message
          news:3a33c04a$[email protected]..
          >
          > Hi,
          > It's ok because you look after the transaction yourself. probably you use
          the default transaction attribute 'Supports'.
          >
          > If your ejb method is in a transaction context, then you throw application
          exception, the container will try to commit the transaction.
          >
          > Hope this can help.
          > Tao Zhang
          >
          > "Gormless" <[email protected]> wrote:
          > >
          > >When I throw an application exception from within a statless session bean
          which uses jdbs for DB Lookup Only I get
          > >"Exception thrown in non-transactional EJB invoke".
          > >
          > >As this is a llokup only I have no Transaction Management
          >
          

Similar Messages

  • Exception in non-transactional EJB invoke:java.lang.NoSuchMethodError

    Hello,
    Iam facing with the following exception while deploying EJB's in Weblogic 5.1. The TX Datasource is setup properly and the application is running fine, when I have modified an existing EJB and while re-deploying, getting the following error:
    Fri Jun 30 22:30:53 EST 2006:<I> <EJB JAR deployment ./lib/deployablePAM_EJB.jar> Exception in non-transactional EJB invoke:
    java.lang.NoSuchMethodError
    at com.bp.downstream.retail.au.pam.dsaf.ejb.site.SiteBeanHomeImpl.preFinderInvoke(SiteBeanHomeImpl.java:906)
    at com.bp.downstream.retail.au.pam.dsaf.ejb.site.SiteBeanHomeImpl.findByGroupIdAgentFlag(SiteBeanHomeImpl.java:217)
    at com.bp.downstream.retail.au.pam.dsaf.ejb.site.SiteBeanHomeImpl_ServiceStub.findByGroupIdAgentFlag(SiteBeanHomeImpl_Servi)
    at com.bp.downstream.retail.au.pam.dsaf.dso.site.SiteDSOEjbImpl.getSitesByGroupIDAgentFlagWithMarkers(SiteDSOEjbImpl.java:9)
    at com.bp.downstream.retail.au.pam.services.ejb.price.PriceBean.getGroupPrices(PriceBean.java:1366)
    at com.bp.downstream.retail.au.pam.services.ejb.price.PriceBeanEOImpl.getGroupPrices(PriceBeanEOImpl.java:366)
    at com.bp.downstream.retail.au.pam.services.serviceobject.GetGroupPrices.callService(GetGroupPrices.java:74)
    at au.com.oakton.ecore.services.ServiceManager.callService(ServiceManager.java:47)
    at au.com.oakton.ecore.request.RequestHandler.processRequest(RequestHandler.java:173)
    at com.bp.downstream.retail.au.pam.serviceaccess.ServiceBean.invoke(ServiceBean.java:66)
    at com.bp.downstream.retail.au.pam.control.PriceGroupAction.perform(PriceGroupAction.java:94)
    at org.apache.struts.action.ActionServlet.processActionPerform(ActionServlet.java:1786)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1585)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:509)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:772)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:120)
    at weblogic.servlet.internal.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:158)
    at org.apache.struts.action.ActionServlet.processActionForward(ActionServlet.java:1758)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1595)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:509)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:772)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:120)
    at weblogic.servlet.internal.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:158)
    at org.apache.struts.action.ActionServlet.processActionForward(ActionServlet.java:1758)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1595)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:509)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:772)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:120)
    at weblogic.servlet.internal.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:158)
    at org.apache.struts.action.ActionServlet.processActionForward(ActionServlet.java:1758)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1595)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:509)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:772)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:120)
    at weblogic.servlet.internal.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:158)
    at org.apache.struts.action.ActionServlet.processActionForward(ActionServlet.java:1758)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1595)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:509)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:772)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:120)
    at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:915)
    at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:879)
    at weblogic.servlet.internal.ServletContextManager.invokeServlet(ServletContextManager.java:269)
    at weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.java:365)
    at weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:253)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:129)
    Please help me in understanding when we get such an exception.

    Hello All,
    I am getting the 'Exception in non-transactional EJB invoke:java.lang.NoSuchMethodError', even if I have not made any modifications in the code. As and when I am re-deploying the deployablePAM_EJB.jar, and exception is raised. I am I missing out something here ?.
    Please let me know.

  • Exception thrown in EJB not captured in ManagedBean

    Hi. Im new in community.
    I have an EE project using JSF 1.2, EJB 3.0 deployed in Weblogic 10.3.6.
    My EJB that throws an Exception that is captured in my ManagedBean. However the exception does not reach to my ManagedBean.
    This exception should reload the page with an error message stating that the group already exists, but as the exception does not reach the ManagedBean, the page is not displayed with the error message.
    I appreciate the help. Rgrds.
    My web.xml
      <error-page>
        <exception-type>java.lang.Exception</exception-type>
        <location>/PRErrorPageView.faces</location>
      </error-page>
    My EJB:
    try {
                List<Grupo> grupos = findGrupoByName(grupo.getNomeGrupo());
                if (!grupos.isEmpty() && !alteraPermissao)
                    throw new GrupoException("msgErroGrupoNomeCadastrado");
    My ManagedBean:
    Here is the call of my EJB
    grupoServices.persisteGrupo(grupo, listCR, listCC, listCM, listCP, listMo, alteraGrupo, codigoTela, codigoUsuarioLogado);         
    cancelar();
    FacesUtil.addSuccessMessage("Grupo criado com sucesso!");
    } catch (GrupoException e) {
    logger.warning(e.getMsg());
    FacesUtil.addErrorMessage(e.getMsg());
    My class GrupoException:
    public class GrupoException extends ComponentException{
        /** The serialVersionUID */
        private static final long serialVersionUID = -6912605895523623154L;
            public GrupoException(String key){
            super(key);
    My ComponentException:
    public class ComponentException extends RuntimeException{
        /** The serialVersionUID */
        private static final long serialVersionUID = -2534006938034008594L;
        private String            msg;
        public ComponentException(String key) {
            String msgBundle = ResourcesUtil.getString(ResourcesUtil.MENSAGENS_FILE, key);
            this.msg = msgBundle;
    Weblogic log:
    ]] Root cause of ServletException.
    javax.faces.FacesException: #{cadastroGrupo.gravar}: javax.ejb.EJBException: EJB Exception: : br.com.telefonica.portal.services.exceptions.GrupoException
        at br.com.telefonica.portal.services.impl.GrupoServiceImpl.persisteGrupo(GrupoServiceImpl.java:93)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
        at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
        at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.oracle.pitchfork.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:34)
        at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
        at com.oracle.pitchfork.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:42)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
        at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
        at $Proxy87.persisteGrupo(Unknown Source)
        at br.com.telefonica.portal.services.impl.GrupoServiceImpl_k21zc8_GrupoServicesLocalImpl.__WL_invoke(Unknown Source)
        at weblogic.ejb.container.internal.SessionLocalMethodInvoker.invoke(SessionLocalMethodInvoker.java:39)
        at br.com.telefonica.portal.services.impl.GrupoServiceImpl_k21zc8_GrupoServicesLocalImpl.persisteGrupo(Unknown Source)
        at br.com.telefonica.portal.web.views.CadastroGrupoBean.gravar(CadastroGrupoBean.java:310)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.el.parser.AstValue.invoke(AstValue.java:187)
        at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297)
        at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)
        at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
        at javax.faces.component.UICommand.broadcast(UICommand.java:387)
        at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:475)
        at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:756)
        at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)
        at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
        at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
        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:301)
        at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3730)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3696)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
        at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2273)
        at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179)
        at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1490)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
    ; nested exception is: br.com.telefonica.portal.services.exceptions.GrupoException
        at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:118)
        at javax.faces.component.UICommand.broadcast(UICommand.java:387)
        at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:475)
        at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:756)
        at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)
        Truncated. see log file for complete stacktrace
    Caused By: javax.faces.el.EvaluationException: javax.ejb.EJBException: EJB Exception: : br.com.telefonica.portal.services.exceptions.GrupoException
        at br.com.telefonica.portal.services.impl.GrupoServiceImpl.persisteGrupo(GrupoServiceImpl.java:93)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
        at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
        at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.oracle.pitchfork.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:34)
        at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
        at com.oracle.pitchfork.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:42)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
        at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
        at $Proxy87.persisteGrupo(Unknown Source)
        at br.com.telefonica.portal.services.impl.GrupoServiceImpl_k21zc8_GrupoServicesLocalImpl.__WL_invoke(Unknown Source)
        at weblogic.ejb.container.internal.SessionLocalMethodInvoker.invoke(SessionLocalMethodInvoker.java:39)
        at br.com.telefonica.portal.services.impl.GrupoServiceImpl_k21zc8_GrupoServicesLocalImpl.persisteGrupo(Unknown Source)
        at br.com.telefonica.portal.web.views.CadastroGrupoBean.gravar(CadastroGrupoBean.java:310)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.el.parser.AstValue.invoke(AstValue.java:187)
        at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297)
        at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)
        at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
        at javax.faces.component.UICommand.broadcast(UICommand.java:387)
        at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:475)
        at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:756)
        at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)
        at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
        at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
        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:301)
        at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3730)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3696)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
        at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2273)
        at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179)
        at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1490)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
    ; nested exception is: br.com.telefonica.portal.services.exceptions.GrupoException
        at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:102)
        at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
        at javax.faces.component.UICommand.broadcast(UICommand.java:387)
        at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:475)
        at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:756)
        Truncated. see log file for complete stacktrace
    Caused By: javax.ejb.EJBException: EJB Exception: : br.com.telefonica.portal.services.exceptions.GrupoException
        at br.com.telefonica.portal.services.impl.GrupoServiceImpl.persisteGrupo(GrupoServiceImpl.java:93)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
        at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
        at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.oracle.pitchfork.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:34)
        at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
        at com.oracle.pitchfork.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:42)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
        at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
        at $Proxy87.persisteGrupo(Unknown Source)
        at br.com.telefonica.portal.services.impl.GrupoServiceImpl_k21zc8_GrupoServicesLocalImpl.__WL_invoke(Unknown Source)
        at weblogic.ejb.container.internal.SessionLocalMethodInvoker.invoke(SessionLocalMethodInvoker.java:39)
        at br.com.telefonica.portal.services.impl.GrupoServiceImpl_k21zc8_GrupoServicesLocalImpl.persisteGrupo(Unknown Source)
        at br.com.telefonica.portal.web.views.CadastroGrupoBean.gravar(CadastroGrupoBean.java:310)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.el.parser.AstValue.invoke(AstValue.java:187)
        at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297)
        at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)
        at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
        at javax.faces.component.UICommand.broadcast(UICommand.java:387)
        at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:475)
        at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:756)
        at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)
        at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
        at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
        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:301)
        at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3730)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3696)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
        at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2273)
        at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179)
        at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1490)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
    ; nested exception is: br.com.telefonica.portal.services.exceptions.GrupoException
        at weblogic.ejb.container.internal.EJBRuntimeUtils.throwEJBException(EJBRuntimeUtils.java:156)
        at weblogic.ejb.container.internal.BaseLocalObject.handleSystemException(BaseLocalObject.java:887)
        at weblogic.ejb.container.internal.BaseLocalObject.handleSystemException(BaseLocalObject.java:818)
        at weblogic.ejb.container.internal.BaseLocalObject.postInvoke1(BaseLocalObject.java:517)
        at weblogic.ejb.container.internal.BaseLocalObject.__WL_postInvokeTxRetry(BaseLocalObject.java:455)
        Truncated. see log file for complete stacktrace
    Caused By: br.com.telefonica.portal.services.exceptions.GrupoException
        at br.com.telefonica.portal.services.impl.GrupoServiceImpl.persisteGrupo(GrupoServiceImpl.java:93)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        Truncated. see log file for complete stacktrace

    Tao,
              > If your ejb method is in a transaction context, then you throw application
              exception, the container will try to commit the transaction.
              In the case of an application exception, the caller will be responsible for
              committing or rolling back the transaction. (A runtime exception will roll
              back the transaction automatically.) That is why, if you use CMT, that the
              EJB methods call from outside the EJB container (such as from a servlet)
              should never be able to throw runtime exceptions.
              Peace,
              Cameron Purdy
              Tangosol, Inc.
              http://www.tangosol.com
              +1.617.623.5782
              WebLogic Consulting Available
              "Tao Zhang" <[email protected]> wrote in message
              news:3a33c04a$[email protected]..
              >
              > Hi,
              > It's ok because you look after the transaction yourself. probably you use
              the default transaction attribute 'Supports'.
              >
              > If your ejb method is in a transaction context, then you throw application
              exception, the container will try to commit the transaction.
              >
              > Hope this can help.
              > Tao Zhang
              >
              > "Gormless" <[email protected]> wrote:
              > >
              > >When I throw an application exception from within a statless session bean
              which uses jdbs for DB Lookup Only I get
              > >"Exception thrown in non-transactional EJB invoke".
              > >
              > >As this is a llokup only I have no Transaction Management
              >
              

  • Put failure behavior in a non-transactional db?

    Hi all,
    I'm still getting to know the ropes here, so hopefully this isn't a stupid question. I'm still prototyping an application, and as such I haven't set my database to be transactional (learning one thing at a time). The app runs for quite a while, but eventually it tries to put an entity into a primary index that violates one of the secondary key constraints (uniqueness). The put() call throws an exception (properly showing KEYEXIST) but then all subsequent operations that I try to perform fail with a lock timeout (DeadlockException).
    My guess is that some resource wasn't cleaned up after the exception since I'm not running transactionally (so no auto-commit), but I can't find any documentation to back that up. Am I likely to avoid this problem if I turn on transactions? If I don't, is there something in the API I can do to clean up after an exception in a non-transactional put?
    Thanks!
    Jeff Alexander

    You may want to check to make sure that you're not leaving a cursor open when an exception occurs. An open cursor will hold a lock. I recommend closing cursors in a finally block.
    If a lock is held by mistake (either your mistake such as not closing a cursor, or a bug in JE), a deadlock may not be caused immediately because other operations may not need to lock the same record. To debug this, perhaps after receiving the KEYEXIST exception and closing cursors properly, you could try closing all Databases and the Environment. Environment.close will throw an exception if any locks were not released.
    It would be nice if there were a way to query the number of outstanding locks, but I don't think we have a way to do that currently, without reaching into JE internals.
    --mark                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Non transactional data source and ejb transaction

    Inside an ejb method with trans-attribute = Required,
    Do a bunch of things using a transactional data source and a bunch of things using
    a non trasnactional data source.
    Looks like the time spent doing the non-transactional data source related work
    does not count for the transaction timeout defined for the ejb.
    So, what happens here, the ejb transaction is suspended ( when I start using the
    non transactional ds ) ?

    Hi,
    "siddiqut" <[email protected]> wrote in message news:3fa7c79d$[email protected]..
    Inside an ejb method with trans-attribute = Required,
    Do a bunch of things using a transactional data source and a bunch of things using
    a non trasnactional data source.
    Looks like the time spent doing the non-transactional data source related work
    does not count for the transaction timeout defined for the ejb.
    So, what happens here, the ejb transaction is suspended ( when I start using the
    non transactional ds ) ?The transaction is not suspended when you call something
    which is not non-transactional.
    Regards,
    Slava Imeshev

  • Non-Transacted Event Generator w/ MQ as Foreign Provider - EJB:010158

    We have configured an event generator to listen to a WebSphere MQ queue. When an xml message that matches the schema is posted to the MQ queue the event generator pulls that message off and kicks off workflows. Although when that message does not match the schema the event generator tries to rollback the poison message. Here's the problem...
    MQ clients on a different machine than the MQ server cannot use transactions, unless you purchase a product [extended transactional client] that costs as must as the MQ server itself. Although you can still access these queues without being part of a transaction.
    The event generator expects to be part of a transaction by default. Although if a message comes in that isn't a poison message you will never throw any exceptions because the event generator will never try to roll that message back. When a poison message does come in you receive this error (over and over and over again) :
    <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.
    My question:
    How do you tell the event generator to not be part of a transaction?
    Or if it has to be part of a transaction then try to roll it back once, if rollback fails then scrap that message and go back to normal behavior?
    Thanks for any help!!!

    When I asked my 3 ibm contacts I received this response :
    "WebSphere MQ Extended Transaction Client software has price consequence and costs as much as full blown WebSphere MQ Server"
    So we are getting different information.
    I also did many searches on mqseries.net for "extended transactional client" with these results related to cost :
    1) The only way to do XA over a client connection is using the Extended Transactional Client - which is licensed at the same rate as a queue manager.
    2) The extended transactional client (not free) is yet another option.
    3) You can either pay for a license for the queue manager to be on the same machine, or you can pay for a license for the Extended Transactional Client to be on the machine with the Java application. Oddly enough, the cost for both of these is pretty much the same.
    4) If you need distribituted transaction (XA) you have to install an MQ server or an Extended Transactional Client. But in this way you cannot decrease the cost factor
    5) Can anyone tell me where I can download a beta version of the MQ Extended Transactional Client. I assume this client is free of charge same as MQ Client.
    next post :
    I don't know if there is a beta download available for this client. I do know that it isn't free of charge.

  • Distributed Environment - Exception during commit of transact

    The Application is deployed in 3 machines (Win2K) in Weblogic 6.1 SP2 with Oracle
    8i as the Database - Presentation EAR file in one machine, Business Logic EAR
    file in second machine and Persistence EAR file in the third machine. The Database
    is also in the third machine. Tx Datasource is configured in all the 3 weblogic
    instances to point to the Database.
    The application has a 'Save' operation in which case the EJB in the Business Logic
    Layer connects to the Datasource of the Persistence Layer. The following error
    is seen in the console of the second machine (Business Logic) while Saving.
    <Error> <EJB> <Exception during commit of transact
    ion Name=[EJB com.toontown.matchmaker.ejb.service.BusinessProcessGatewayEJB.proc
    ess(reefwork.bp.BusinessProcessEvent)],Xid=1:d4f44d847f28edb9(7225037),Status=Ro
    lled back. [Reason=javax.transaction.SystemException: Aborting prepare because
    s
    ome resources could not be assigned],numRepliesOwedMe=0,numRepliesOwedOthers=0,s
    econds since begin=1,seconds left=10,ServerResourceInfo[weblogic.jdbc.jts.Connec
    tion]=(state=new,assigned=none),SCInfo[mydomain+myserver]=(state=rolledback),pro
    perties=({weblogic.transaction.name=[EJB com.toontown.matchmaker.ejb.service.Bus
    inessProcessGatewayEJB.process(reefwork.bp.BusinessProcessEvent)], weblogic.jdbc
    =t3://130.10.11.30:7001}),OwnerTransactionManager=ServerTM[ServerCoordinatorDesc
    riptor=(CoordinatorURL=myserver+130.10.7.94:7001+mydomain+, Resources={})],Coord
    inatorURL=myserver+130.10.7.94:7001+mydomain+): javax.transaction.SystemExceptio
    n: Aborting prepare because some resources could not be assigned
    at weblogic.transaction.internal.TransactionImpl.abort(TransactionImpl.java:924)
    at weblogic.transaction.internal.ServerTransactionImpl.globalPrepare(ServerTransactionImpl.java:1566)
    at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:218)
    at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:190)
    at weblogic.ejb20.internal.BaseEJBObject.postInvoke(BaseEJBObject.java:231)
    at com.toontown.matchmaker.ejb.service.BusinessProcessGatewayEJB_yd4d11_
    EOImpl.process(BusinessProcessGatewayEJB_yd4d11_EOImpl.java:46)
    at com.toontown.matchmaker.ejb.service.BusinessProcessGatewayEJB_yd4d11_
    EOImpl_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
    at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
    at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    --------------- nested within: ------------------
    weblogic.transaction.RollbackException: Aborting prepare because some resources
    could not be assigned - with nested exception:
    [javax.transaction.SystemException: Aborting prepare because some resources coul
    d not be assigned]
    at weblogic.transaction.internal.TransactionImpl.throwRollbackException(
    TransactionImpl.java:1475)
    at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:263)
    at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:190)
    at weblogic.ejb20.internal.BaseEJBObject.postInvoke(BaseEJBObject.java:231)
    at com.toontown.matchmaker.ejb.service.BusinessProcessGatewayEJB_yd4d11_
    EOImpl.process(BusinessProcessGatewayEJB_yd4d11_EOImpl.java:46)
    at com.toontown.matchmaker.ejb.service.BusinessProcessGatewayEJB_yd4d11_
    EOImpl_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
    at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
    at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    >
    Please note that 130.10.7.94 is the IP of Business Logic Layer and 130.10.11.30
    is the IP of Persistence Layer.
    Thanks!

    Try changing the server name on either on persistence machine or business logic
    machine
    "Devika" <[email protected]> wrote:
    >
    >
    The Application is deployed in 3 machines (Win2K) in Weblogic 6.1 SP2
    with Oracle
    8i as the Database - Presentation EAR file in one machine, Business Logic
    EAR
    file in second machine and Persistence EAR file in the third machine.
    The Database
    is also in the third machine. Tx Datasource is configured in all the
    3 weblogic
    instances to point to the Database.
    The application has a 'Save' operation in which case the EJB in the Business
    Logic
    Layer connects to the Datasource of the Persistence Layer. The following
    error
    is seen in the console of the second machine (Business Logic) while Saving.
    <Error> <EJB> <Exception during commit of transact
    ion Name=[EJB com.toontown.matchmaker.ejb.service.BusinessProcessGatewayEJB.proc
    ess(reefwork.bp.BusinessProcessEvent)],Xid=1:d4f44d847f28edb9(7225037),Status=Ro
    lled back. [Reason=javax.transaction.SystemException: Aborting prepare
    because
    s
    ome resources could not be assigned],numRepliesOwedMe=0,numRepliesOwedOthers=0,s
    econds since begin=1,seconds left=10,ServerResourceInfo[weblogic.jdbc.jts.Connec
    tion]=(state=new,assigned=none),SCInfo[mydomain+myserver]=(state=rolledback),pro
    perties=({weblogic.transaction.name=[EJB com.toontown.matchmaker.ejb.service.Bus
    inessProcessGatewayEJB.process(reefwork.bp.BusinessProcessEvent)], weblogic.jdbc
    =t3://130.10.11.30:7001}),OwnerTransactionManager=ServerTM[ServerCoordinatorDesc
    riptor=(CoordinatorURL=myserver+130.10.7.94:7001+mydomain+, Resources={})],Coord
    inatorURL=myserver+130.10.7.94:7001+mydomain+): javax.transaction.SystemExceptio
    n: Aborting prepare because some resources could not be assigned
    at weblogic.transaction.internal.TransactionImpl.abort(TransactionImpl.java:924)
    at weblogic.transaction.internal.ServerTransactionImpl.globalPrepare(ServerTransactionImpl.java:1566)
    at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:218)
    at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:190)
    at weblogic.ejb20.internal.BaseEJBObject.postInvoke(BaseEJBObject.java:231)
    at com.toontown.matchmaker.ejb.service.BusinessProcessGatewayEJB_yd4d11_
    EOImpl.process(BusinessProcessGatewayEJB_yd4d11_EOImpl.java:46)
    at com.toontown.matchmaker.ejb.service.BusinessProcessGatewayEJB_yd4d11_
    EOImpl_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
    at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
    at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    --------------- nested within: ------------------
    weblogic.transaction.RollbackException: Aborting prepare because some
    resources
    could not be assigned - with nested exception:
    [javax.transaction.SystemException: Aborting prepare because some resources
    coul
    d not be assigned]
    at weblogic.transaction.internal.TransactionImpl.throwRollbackException(
    TransactionImpl.java:1475)
    at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:263)
    at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:190)
    at weblogic.ejb20.internal.BaseEJBObject.postInvoke(BaseEJBObject.java:231)
    at com.toontown.matchmaker.ejb.service.BusinessProcessGatewayEJB_yd4d11_
    EOImpl.process(BusinessProcessGatewayEJB_yd4d11_EOImpl.java:46)
    at com.toontown.matchmaker.ejb.service.BusinessProcessGatewayEJB_yd4d11_
    EOImpl_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
    at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
    at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    >
    Please note that 130.10.7.94 is the IP of Business Logic Layer and 130.10.11.30
    is the IP of Persistence Layer.
    Thanks!

  • "rollback" for non-transaction objects

    Hello,
    I have the following situation:
    When I work with some entity in DAL layer it is atached, so all my changes will be flushed. After flushing some contraint of DB can be violated. My changes can be done in transaction or without any transaction, and here is my problem:
    If it is in transaction, I should not rollback it (user can correct "mistake"); If it is out of transaction - it should be "rollbacked".
    To handle situation with transaction I've made my exception '@ApplicationException' and it works.
    But it is bad for the second situation, without transaction. In this case my data are flushed anyway (if exception thrown is ApplicationException). In my exception handler I tried to do this: "if I'm not in transaction so service.getEntityManager.clear();", but data are flushed anyway...
    So how to handle this situation? Does "clear()" for non-transaction have to work as "rollback()" for transaction?
    (I think that it could be done so: throw ApplicationException if I am in Transaction, otherwise RuntimeException to rollback any changes; but maybe there is another solution?)
    Thanks in advance,
    Maxym

    If you use CMT EJBs, then you do not have to begin, commit, or roll back.
              If your client calls methods that can throw application exceptions, then you
              must handle the transaction (commit or roll back) in the cases that those
              application exceptions are thrown.
              Peace,
              Cameron Purdy
              Tangosol, Inc.
              http://www.tangosol.com
              +1.617.623.5782
              WebLogic Consulting Available
              "TH Lim" <[email protected]> wrote in message
              news:3a3989d6$[email protected]..
              >
              > Hi,
              >
              > Part of my client code looks like this,
              > try {
              > ..
              > trans.begin(); // transaction begins
              > .. // calling some EJB methods
              > ..
              > trans.commit(); // transaction commits
              > }
              > catch(Exception e)
              > {
              > }
              >
              > My question is do I have to explicitly do a trans.rollback() if there is a
              RemoteException thrown between begin() and commit(). Do I have to
              instantiate a new transaction if the current transaction is rollbacked?
              Thank you.
              

  • Possible to determine exception thrown in a finally block?

    I believe the answer to this is 'no', but I thought I would ask just to confirm.
    If an exception is thrown in a try block, is there a way in the finally block to determine what exception was thrown? I tried using Throwable#fillinStackTrace and Thread#getStackTrace and did not get anywhere. I did see other methods like Thread#getAllStackTraces and perhaps going up to a parent ThreadGroup and inspecting other child Thread instances, but at least in my debugger, I did not see anything useful.
    The basic idea I am trying to achieve is to detect if an exception is thrown in the try, if yes, chain any exception thrown in the finally block to the original exception. I know I can do this on a case-by-case basis by storing the exception caught and then manually chaining it in the finally block. I was looking for something more generic/applicable to all finally blocks.
    Thanks.
    - Saish

    Thanks JSchell, have done that many times in the past.
    I was looking for a more generic (not generics) solution to the problem. So that an error handler could be written to automatically chain exceptions thrown in the finally clause (granted, one still needs to invoke the error handler). My hope was the stack in the finally clause would look different if an exception was thrown in the try block versus none at all.
    - Saish

  • Communcation Channel Type E-Mail Receiver Exception thrown in method proces

    Hi,
    I use a scenario R/3 IDOC -> XI -> Email. It is working, however the email is send 4 times.
    I have an error within a communication channel.
    Adaptertype E-Mail Direction Receiver
    The communcation channel message log show the following entry:
    2008-08-14 12:47:09 Erfolgreich Message wurde erfolgreich vom Messaging-System empfangen. Profil: XI URL: http://host:port/MessagingSystem/receive/AFW/XI Credential (User): PIISUSER
    2008-08-14 12:47:09 Erfolgreich Mit der Verbindung Mail_http://sap.com/xi/XI/System. Versuch die Message in die Empfangs-Queue zu stellen
    2008-08-14 12:47:09 Erfolgreich Message erfolgreich in Queue gestellt
    2008-08-14 12:47:09 Erfolgreich Die Message wurde erfolgreich aus der Empfangs-Queue abgerufen
    2008-08-14 12:47:09 Erfolgreich Der Status der Message wurde auf DLNG gesetzt
    2008-08-14 12:47:09 Erfolgreich Liefert an Kanal: CC_Application_Mail_RCV
    2008-08-14 12:47:09 Erfolgreich MP: Tritt in den Modulprozessor ein
    2008-08-14 12:47:09 Erfolgreich MP: Lokales Modul localejbs/sap.com/com.sap.aii.adapter.mail.app/XIMailAdapterBean wird verarbeitet
    2008-08-14 12:47:09 Erfolgreich Mail: message entering the adapter
    2008-08-14 12:47:09 Erfolgreich Mail: Receiver adapter entered with qos ExactlyOnce
    2008-08-14 12:47:09 Erfolgreich Mail: calling the adpter for processing
    2008-08-14 12:47:09 Erfolgreich Mail: call completed
    2008-08-14 12:47:09 Erfolgreich Mail: continuing to response message 58650010-69ee-11dd-bc24-0018fe76622e
    2008-08-14 12:47:09 Erfolgreich Mail: sending a delivery ack ...
    2008-08-14 12:47:09 Erfolgreich Mail: sent a delivery ack
    2008-08-14 12:47:09 Erfolgreich MP: Lokales Modul localejbs/AF_Modules/MessageTransformBean wird verarbeitet
    2008-08-14 12:47:09 Fehler MP: Ausnahme aufgetreten mit Grund com.sap.engine.services.ejb.exceptions.BaseTransactionRolledbackLocalException: Exception thrown in method process. The transaction is marked for rollback.
    2008-08-14 12:47:09 Fehler Ausnahme aufgetreten beim Adapter-Framework: Exception thrown in method process. The transaction is marked for rollback.
    2008-08-14 12:47:09 Fehler Zustellung der Message an die Anwendung über Mail_http://sap.com/xi/XI/System ist fehlgeschlagen weil: com.sap.aii.af.ra.ms.api.RecoverableException: Exception thrown in method process. The transaction is marked for rollback.: com.sap.engine.services.ejb.exceptions.BaseTransactionRolledbackLocalException: Exception thrown in method process. The transaction is marked for rollback.
    2008-08-14 12:47:09 Erfolgreich Der Status der Message wurde auf WAIT gesetzt
    2008-08-14 12:47:09 Erfolgreich Die Zustellung der asynchronen Message um Thu Aug 14 12:52:09 CEST 2008 wurde erfolgreich eingeplant.
    Does anybody know what do to?
    Best regards,
    Nils Kloth

    Hi,
    it seems that the module processing is not working, if the flag keep attachments is not checked.
    Best regards,
    Nils Kloth

  • Weblogic 7 SP5 SQL Exceptions follow a JTA transaction timeout

    I have a problem in Weblogic 7 SP5 that was not happening in SP2. I'm using the
    Weblogic jDriver (weblogic.jdbc.mssqlserver4.Driver)
    I have a transaction that times out due to JTA transaction timeout, and then gets
    marked for rollback. For several minutes after the timeout, I get many SQL Exceptions
    with bogus messages like "invalid column name" when the column name is, in fact,
    correct.
    Then the weblogic log file shows "Exception during rollback of transaction" (javax.transaction.SystemException:
    Heuristic hazard). Next, the connection is tested on reserve, this test fails,
    and the connection is refreshed. As soon as the connection is refreshed, I stop
    getting SQL exceptions and everything starts working correctly again.
    It seems like the transaction timeout is making the connection go bad, and somehow
    other requests are using this bad connection before the transaction finishes rolling
    back. What could the problem be? Some excerpts from my app log and weblogic log
    are below.
    com.workpoint.server.ejb.WorkPointEJBException: The transaction is no longer active
    - status: 'Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException:
    Transaction timed out after 901 seconds
    Name=[EJB com.storeperform.taskmgr.ejb.procrelease.ProcReleaseBean.distributeToOrgUnit(com.storeperform.taskmgr.values.DistributionUnit)],Xid=17109:68c10765ba68aaaa(12114044),Status=Active,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds
    since begin=901,seconds left=60,activeThread=Thread[WorkQueueThread[q=1, qName=ProcReleaseTaskWorkers,
    id=6],5,WorkQueueGroup[id=1, name=ProcReleaseTaskWorkers]],ServerResourceInfo[weblogic.jdbc.jts.Connection]=(state=ended,assigned=none,xar=weblogic.jdbc.jts.Connection@18cd616,re-Registered
    = false),SCInfo[DomainManager+edwards-s1]=(state=active),properties=({weblogic.transaction.name=[EJB
    com.storeperform.taskmgr.ejb.procrelease.ProcReleaseBean.distributeToOrgUnit(com.storeperform.taskmgr.values.DistributionUnit)],
    weblogic.jdbc=t3://10.10.3.17:7001}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=edwards-s1+10.10.3.17:7001+DomainManager+t3+,
    Resources={})],CoordinatorURL=edwards-s1+10.10.3.17:7001+DomainManager+t3+)]'.
    No further JDBC access is allowed within this transaction.SQL Command = INSERT
    INTO WP_PROCI_NODE_HIST (NODE_HIST_ID, NODE_HIST_DB, PROCI_ID, PROCI_DB, PROCI_NODE_ID,
    PROCI_NODE_DB, NODE_ITERATION, NODE_STATE_ID, ROW_VERSION, LU_ID, LU_DATE) VALUES
    weblogic.jdbc.mssqlserver4.TdsException: Invalid column name 'user_fname'.
    [from weblogic log]
    ####<Jun 17, 2004 8:14:16 AM MDT> <Error> <EJB> <EDWARDS> <edwards-s1> <WorkQueueThread[q=1,
    qName=ProcReleaseTaskWorkers, id=7]> <kernel identity> <> <010025> <Exception
    during rollback of transaction Name=[EJB com.storeperform.taskmgr.ejb.procrelease.ProcReleaseBean.distributeToOrgUnit(com.storeperform.taskmgr.values.DistributionUnit)],Xid=17439:68c10765ba68aaaa(31878774),Status=Rolled
    back. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException],HeuristicErrorCode=XA_HEURHAZ,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds
    since begin=3,seconds left=57,ServerResourceInfo[weblogic.jdbc.jts.Connection]=(state=rolledback,assigned=edwards-s1,xar=weblogic.jdbc.jts.Connection@15e1b7e,re-Registered
    = false),SCInfo[DomainManager+edwards-s1]=(state=rolledback),properties=({weblogic.transaction.name=[EJB
    com.storeperform.taskmgr.ejb.procrelease.ProcReleaseBean.distributeToOrgUnit(com.storeperform.taskmgr.values.DistributionUnit)],
    weblogic.jdbc=t3://10.10.3.17:7001}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=edwards-s1+10.10.3.17:7001+DomainManager+t3+,
    Resources={})],CoordinatorURL=edwards-s1+10.10.3.17:7001+DomainManager+t3+): javax.transaction.SystemException:
    Heuristic hazard: (weblogic.jdbc.jts.Connection, HeuristicHazard, (javax.transaction.xa.XAException:
    I/O exception while talking to the server, java.io.EOFException))
    ####<Jun 17, 2004 8:14:17 AM MDT> <Warning> <JDBC> <EDWARDS> <edwards-s1> <ExecuteThread:
    '8' for queue: 'default'> <kernel identity> <> <001094> <A connection from pool
    "sp_connection_pool" was tested during reserve with the SQL "select 1" and failed:
    weblogic.jdbc.mssqlserver4.TdsException: I/O exception while talking to the server,
    java.io.EOFException
    ...[stack trace omitted]...
    This connection will now be refreshed.>

    Brad Swanson wrote:
    According to BEA's documentation, the jDriver is deprecated (no longer supported)
    in WLS 7 SP5. Not sure when they stopped supporting it, but sometime after SP2,
    apparently. Our solution, unfortunately, was to stay with SP2. Using the newer,
    supported JDBC driver would presumably fix the problem, but we didn't have time
    to do a full regression test with a different driver.Hi, no. The jDriver is deprecated, not unsupported. For WLS releases that contain
    the jDriver it will be supported for as long as we support the WLS release!
    Deprecation just means that we may choose to not supply that driver in any future
    release, and will not support it in that or any subsequent release.
    Practically, much depends on which jDriver you're using. In decreasing order
    of practical support we have: The weblogic.jdbc.oci.Driver to Oracle: We do actively
    continue to fix bugs in it. The weblogic.jdbc.mssqlserver4.Driver: Very unlikely that
    we will fix any new problem with it. The weblogic.jdbc.ifmx.Driver: Even less
    likely that we will do anything with it...
    I hope that makes it better for you.
    Joe

  • I am facing a problem while deploying an Entity bean in iPlanet(sp3).I have attached the exception thrown.Why has this exception occured?

    [04/Dec/2001 10:54:00:2] error: EBFP-marshal_internal: internal exception caught in kcp skeleton, ex
    ception = java.lang.NullPointerException
    [04/Dec/2001 10:54:00:2] error: Exception Stack Trace:
    java.lang.NullPointerException
    at java.util.Hashtable.get(Hashtable.java:321)
    at com.netscape.server.ejb.SQLPersistenceManager.<init>(Unknown Source)
    at com.netscape.server.ejb.SQLPersistenceManagerFactory.newInstance(Unknown Source)
    at com.netscape.server.ejb.EntityDelegateManagerImpl.getPersistenceManager(Unknown Source)
    at com.netscape.server.ejb.EntityDelegateManagerImpl.doPersistentFind(Unknown Source)
    at com.netscape.server.ejb.EntityDelegateManagerImpl.find(Unknown Source)
    at com.kivasoft.eb.EBHomeBase.findSingleByParms(Unknown Source)
    at samples.test.ejb.Entity.ejb_home_samples_test_ejb_Entity_TestEntityBean.findByPrimaryKey(
    ejb_home_samples_test_ejb_Entity_TestEntityBean.java:126)
    at samples.test.ejb.Entity.ejb_kcp_skel_TestEntityHome.findByPrimaryKey__samples_test_ejb_En
    tity_TestEntity__int(ejb_kcp_skel_TestEntityHome.java:266)
    at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
    at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
    at samples.test.ejb.Entity.ejb_kcp_stub_TestEntityHome.findByPrimaryKey(ejb_kcp_stub_TestEnt
    ityHome.java:338)
    at samples.test.ejb.Entity.ejb_stub_TestEntityHome.findByPrimaryKey(ejb_stub_TestEntityHome.
    java:85)
    at samples.test.ejb.TestEJB.getGreeting(TestEJB.java:51)

    Hi,
    I think you are trying to test the Hello world EJB example shipped with the product. As a first
    step I would recomend you to go through every line of the document on deploying this application,
    since, I too have experienced many errors while trying to deploy the sample applications, but on
    following the documentation, I subsequently overcame all the errors and have been working with the
    applications. So please follow the steps in documentation and let me know, if you still encounter any
    issues.
    Regards
    Raj
    Sandhya S wrote:
    I am facing a problem while deploying an Entity bean in iPlanet(sp3).I
    have attached the exception thrown.Why has this exception occured?
    [04/Dec/2001 10:54:00:2] error: EBFP-marshal_internal: internal
    exception caught in kcp skeleton, ex
    ception = java.lang.NullPointerException
    [04/Dec/2001 10:54:00:2] error: Exception Stack Trace:
    java.lang.NullPointerException
    at java.util.Hashtable.get(Hashtable.java:321)
    at
    com.netscape.server.ejb.SQLPersistenceManager.<init>(Unknown Source)
    at
    com.netscape.server.ejb.SQLPersistenceManagerFactory.newInstance(Unknown
    Source)
    at
    com.netscape.server.ejb.EntityDelegateManagerImpl.getPersistenceManager(Unknown
    Source)
    at
    com.netscape.server.ejb.EntityDelegateManagerImpl.doPersistentFind(Unknown
    Source)
    at
    com.netscape.server.ejb.EntityDelegateManagerImpl.find(Unknown Source)
    at com.kivasoft.eb.EBHomeBase.findSingleByParms(Unknown
    Source)
    at
    samples.test.ejb.Entity.ejb_home_samples_test_ejb_Entity_TestEntityBean.findByPrimaryKey(
    ejb_home_samples_test_ejb_Entity_TestEntityBean.java:126)
    at
    samples.test.ejb.Entity.ejb_kcp_skel_TestEntityHome.findByPrimaryKey__samples_test_ejb_En
    tity_TestEntity__int(ejb_kcp_skel_TestEntityHome.java:266)
    at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
    at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
    at
    samples.test.ejb.Entity.ejb_kcp_stub_TestEntityHome.findByPrimaryKey(ejb_kcp_stub_TestEnt
    ityHome.java:338)
    at
    samples.test.ejb.Entity.ejb_stub_TestEntityHome.findByPrimaryKey(ejb_stub_TestEntityHome.
    java:85)
    at samples.test.ejb.TestEJB.getGreeting(TestEJB.java:51)
    Try our New Web Based Forum at http://softwareforum.sun.com
    Includes Access to our Product Knowledge Base!

  • Error Occurred: Exception thrown is NOT a DSCException : UnExpected From DSC

    Hey Everybody ,
    In the context of my project. I was bring to use LiveCycle ES API  to identify with the server . so when i try to connect using the EJB proposed by livecycle i get this error :
    com.adobe.idp.um.api.UMException| [com.adobe.livecycle.usermanager.client.AuthenticationManagerServiceClient] errorCode:16385 errorCodeHEX:0x4001 message:Exception thrown is NOT a DSCException : UnExpected From DSC chainedException:ALC-DSC-000-000: com.adobe.idp.dsc.DSCRuntimeException: Internal error.chainedExceptionMessage:Internal error. chainedException trace:ALC-DSC-000-000: com.adobe.idp.dsc.DSCRuntimeException: Internal error.
    at com.adobe.idp.dsc.provider.impl.ejb.EjbMessageDispatcher.doSend(EjbMessageDispatcher.java :175)
    at com.adobe.idp.dsc.provider.impl.base.AbstractMessageDispatcher.send(AbstractMessageDispat cher.java:66)
    at com.adobe.idp.dsc.clientsdk.ServiceClient.invoke(ServiceClient.java:208)
    at com.adobe.livecycle.usermanager.client.AuthenticationManagerServiceClient.authenticate(Au thenticationManagerServiceClient.java:109)
    at com.gaselys.test.PurgeProcess.main(PurgeProcess.java:71)
    Caused by: java.rmi.RemoteException: Remote EJBObject lookup failed for 'ejb/Invocation'; nested exception is:
    org.jboss.remoting.CannotConnectException: Can not get connection to server. Problem establishing socket connection for InvokerLocator [socket://127.0.0.1:4446/?dataType=invocation&enableTcpNoDelay=true&marshaller=org.jboss. invocation.unified.marshall.InvocationMarshaller&socketTimeout=600000&unmarshaller=org.jbo ss.invocation.unified.marshall.InvocationUnMarshaller]
    at com.adobe.idp.dsc.provider.impl.ejb.EjbMessageDispatcher.initialise(EjbMessageDispatcher. java:105)
    at com.adobe.idp.dsc.provider.impl.ejb.EjbMessageDispatcher.doSend(EjbMessageDispatcher.java :141)
    ... 4 more
    Caused by: org.jboss.remoting.CannotConnectException: Can not get connection to server. Problem establishing socket connection for InvokerLocator [socket://127.0.0.1:4446/?dataType=invocation&enableTcpNoDelay=true&marshaller=org.jboss.invocation.unified.marshall .InvocationMarshaller&socketTimeout=600000&unmarshaller=org.jboss.invocation.unified.marsh all.InvocationUnMarshaller]
    at org.jboss.remoting.transport.socket.MicroSocketClientInvoker.transport(MicroSocketClientI nvoker.java:530)
    at org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:122)
    at org.jboss.remoting.Client.invoke(Client.java:1550)
    at org.jboss.remoting.Client.invoke(Client.java:530)
    at org.jboss.invocation.unified.interfaces.UnifiedInvokerProxy.invoke(UnifiedInvokerProxy.ja va:183)
    at org.jboss.invocation.InvokerInterceptor.invokeInvoker(InvokerInterceptor.java:365)
    at org.jboss.invocation.MarshallingInvokerInterceptor.invoke(MarshallingInvokerInterceptor.j ava:63)
    at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:61)
    at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:70)
    at org.jboss.proxy.ejb.HomeInterceptor.invoke(HomeInterceptor.java:184)
    at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:100)
    at $Proxy0.create(Unknown Source)
    at com.adobe.idp.dsc.provider.impl.ejb.EjbMessageDispatcher.initialise(EjbMessageDispatcher. java:95)
    ... 5 more
    Caused by: java.net.ConnectException: Connection refused: connect
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(Unknown Source)
    at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
    at java.net.PlainSocketImpl.connect(Unknown Source)
    at java.net.SocksSocketImpl.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at org.jboss.remoting.transport.socket.SocketClientInvoker.createSocket(SocketClientInvoker. java:187)
    at org.jboss.remoting.transport.socket.MicroSocketClientInvoker.getConnection(MicroSocketCli entInvoker.java:801)
    at org.jboss.remoting.transport.socket.MicroSocketClientInvoker.transport(MicroSocketClientI nvoker.java:526)
    ... 17 more
    NB:  The ejb is working well on my first environment <Dev>
    I'm using Livecycle ES 2 9.0
    JBoss_4_2_1_GA
    Oracle 10g
    Any proposal or suggestion will be useful
    Naoufal FAHEM

    Awsome I have no more error
    i had to make change on my  jboss-service.xml .
    change
    <attribute name="serverBindAddress">${jboss.bind.address}</attribute>
    i changed the ${jboss.bind.address} with my server ip adress.
    now everything is working fine

  • Differentiating between same exception thrown from 2 different methods

    Suppose I have a class CodeDAO which has 2 methods who both throw SQLException
    public int getLocationCode(String locationName) throws SQLException;
    public int getDepartmentCode(String departmentName) throws SQLException;Now I have a business method in which I have to use both of the above DAO methods.
    public int process() {
       try {
          CodeDAO codeDAO = new CodeDAO();
          int locationCode = codeDAO.getLocationCode("NJ");
          int departmentCode = codeDAO.getDepartmentCode("Sales");
       catch (SQLException e) {
    }If SQLException is thrown how will I know if it is thrown by the getLocationCode method or getDepartmentCode method?
    What are the different choices I have in differentiating between same exception thrown from different methods? And which choice do you guys prefer?
    Thanks

    srhcan wrote:
    maheshguruswamy wrote:
    srhcan wrote:
    gimbal2 wrote:
    baftos wrote:
    Put each method invokation in its own try/catch block.Or in fact not use SQLException, but exceptions that are unique.So each DAO method has its own exception?
    public int getLocationCode(String locationName) throws GetLocationCodeException;
    public int getDepartmentCode(String departmentName) throws GetDepartmentCodeException;would not that means I have to create a lot of exception classes?
    Edited by: srhcan on Aug 9, 2012 2:54 PMLet me ask you this, what do you plan to do in the catch block? Do some sort of recovery? rollback? If it is just for logging purposes, I am pretty sure the exception message will give you enough information to find out where the error was.* I would like to give user a specific message based on which method fails. So if getLocationCode("NJ") fails the message can be: Unable to find code for Location "NJ". And if getDepartmentCode("Sales") fails the message can be: Unable to find code for Department "Sales".
    * I would like to print the exception's stacktrace in the log file.
    * I may do a rollback depending on if its an INSERT/UPDATE/DELETE statement.Well, in that case why not log it in the DAO methods themselves...inside getLocationCode and getDepartmentCode. Instead of trying to do the recovery/logging in the process method, do it in the individual dao methods. The calling classes should not be responsible for logging/recovery etc. It should be done in the DAO classes themselves and the DAO method should return an appropriate message/code to the consumer tier classes indicating the status of the transaction. Just my 0.02$.

  • File not found and exception during commit of transaction

    Hi All,<p></p>
    We are using weblogic 8.1 sp5 and oracle 9.2. In a business process (jpd), I am getting this message and exception immediately after publishing a request document(xml) to a channel and goes to the next process node and the process aborts. Any thoughts are appreciated. Please let me know soon.
    <p></p>
    Thanks in advance!<p></p>
    Prashant
    <p></P>
    <u>Message:</u>
    Could not find a file for class oracle.jdbc.driver.T4CXAConnection
    <p></P>
    If I hit continue while debugging then I get this <u>exception:</u><p></P>
    <Error> <EJB> <BEA-010026> <Exception occurred during commit of transaction Xid=BEA1-0049BFC11227BCBD651D(24359063),Status=Rolled back. [Reason=javax.ejb.EJBException: Exception on insert: java.lang.RuntimeException: Unable to serialize invocable],numRepliesOwedMe=0,numR
    epliesOwedOthers=0,seconds since begin=645,seconds left=60,XAServerResourceInfo[JMS_cgJMSStore]=(ServerResourceInfo[JMS_cgJMSStore]=(state=rolledback,assigned=qbAdmin),xar=JMS_cgJMSStore,re-Registered = false),XAServerResourceInfo[cgPool]=(ServerResourceInfo[cgPool]=(state=rolledback,assigned=qbAdmi
    n),xar=cgPool,re-Registered = false),SCInfo[qbDomain+qbAdmin]=(state=rolledback),SCInfo[current+qprocwlp1]=(state=rolledback),properties=({}),local properties=({modifiedListeners=[weblogic.ejb20.internal.TxManager$TxListener@397bfb], weblogic.jdbc.jta.cgPool=weblogic.jdbc.wrapper.TxInfo@4eb65b}),Own
    erTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=qbAdmin+10.1.130.38:7003+qbDomain+t3+, XAResources={JMS_FileStore, JMS_QProcureFileStore, cgPool, JMS_cgJMSStore, bpmArchPool},NonXAResources={})],CoordinatorURL=qbAdmin+10.1.130.38:7003+qbDomain+t3+): javax.ejb.EJBException:
    Exception on insert: java.lang.RuntimeException: Unable to serialize invocable at com.bea.wlw.runtime.core.bean.BMPContainerBean.ejbStore(BMPContainerBean.java:1837) at com.bea.wli.bpm.runtime.ProcessContainerBean.ejbStore(ProcessContainerBean.java:193) at com.bea.wli.bpm.runtime.ProcessContainerBean.ejbStore(ProcessContainerBean.java:171) at com.bea.wlwgen.PersistentContainer_bajz39_Impl.ejbStore(PersistentContainer_bajz39_Impl.java:149)at weblogic.ejb20.manager.ExclusiveEntityManager.beforeCompletion(ExclusiveEntityManager.java:593) at weblogic.ejb20.internal.TxManager$TxListener.beforeCompletion(TxManager.java:737) at weblogic.transaction.internal.ServerSCInfo.callBeforeCompletions(ServerSCInfo.java:1026) at weblogic.transaction.internal.ServerSCInfo.startPrePrepareAndChain(ServerSCInfo.java:116) at weblogic.transaction.internal.ServerTransactionImpl.localPrePrepareAndChain(ServerTransactionImpl.java:1202) at weblogic.transaction.internal.ServerTransactionImpl.globalPrePrepare(ServerTransactionImpl.java:1974) at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:257) at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:228) at weblogic.ejb20.internal.MDListener.execute(MDListener.java:430) 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)
    Caused by: java.lang.Exception: Exception on insert: java.lang.RuntimeException: Unable to serialize invocable
    at .bea.wlw.runtime.core.bean.BMPContainerBean.doInsert(BMPContainerBean.java:1909) at com.bea.wlw.runtime.core.bean.BMPContainerBean.ejbStore(BMPContainerBean.java:1817)... 18 more
    Caused by: java.lang.RuntimeException: Unable to serialize invocable at com.bea.wlw.runtime.core.container.Invocable.toByteArray(Invocable.java:812) at com.bea.wlw.runtime.core.bean.BMPContainerBean.doInsert(BMPContainerBean.java:1859)... 19 more
    Caused by: java.io.NotSerializableException: java.util.AbstractList$ListItr at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1054)
    at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1332)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1304)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1247)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)
    at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1332)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1304)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1247)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)
    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:278)
    at com.bea.wlw.runtime.core.container.Invocable.toByteArray(Invocable.java:803)
    ... 20 more
    --------------- nested within: ------------------
    weblogic.transaction.RollbackException: Unexpected exception in beforeCompletion: sync=weblogic.ejb20.internal.TxManager$TxListener@397bfb
    Exception on insert: java.lang.RuntimeException: Unable to serialize invocable - with nested exception:
    [javax.ejb.EJBException: Exception on insert: java.lang.RuntimeException: Unable to serialize invocable] at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1684) at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:311) at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:228) at weblogic.ejb20.internal.MDListener.execute(MDListener.java:430) at weblogic.ejb20.internal.MDListener.transactionalOnMessage(MDListener.java:333)

    One possible cause of this issue is that your JPD may have some non-transient field(s) which is/are not Serializable. Check for the warnings in the Workshop, that may point you to such fields.
    ~Balwinder

Maybe you are looking for

  • Error running 9i reports from forms.

    Hi folks, i am having problems running 9i reports from a form. i have installed Oracle 9iDS on a Win XP machine with 256 MB RAM and a Pentium 1.4Ghz processor. i also have a local Oracle 9i database. i have created several reports that i am trying to

  • Not able to access my files on in built device media on BB 9800

    I am unable to access any files (music, pictures, videos etc) saved on Device in-built storage neither from BB nor from desktop manager since morning.

  • IPhone Jack broken, warranty gone

    Hello, The headphone jack of my iPhone is broken, it simply needs replacement. The problem is that my warranty is gone and that I moved from Italia (where I purchased the iPhone) to Belgium in the meantime. I wanted to get it fixed by apparantly I ca

  • Restore file un openable

    I recently had to back up and restore my HP Pavilion dv-6 after rebooting, installing operating system ETC. I ran the backup and in placed a backup folder on the desk top that contains all of my documents from before the crash. The problem is that I

  • ICloud - objectively a very poor implementation: discuss

    Please, no 'apple can do no wrong' comments. We've had plenty of hype in the last several months and, seemingly, promises of things moving on significantly but really this is quite a 'half-baked' offering. The mobileme to icloud process tells you to