13 Replies Latest reply: Mar 12, 2012 5:31 AM by Wolf-Dieter Fink RSS

EJBException:Invalid invokation Exception while accessing fr

upankar das Newbie

Hi,
I get the exception (pasted below), when I try to invoke the create on home from a war app. Also, this is happening only when both jar and war are in the same JBOSS instance. This doesnt happen if i deploy them into two separate JBOSS instances, and then access the EJB from the war. Also, i am successfully able to invoke the EJB from a stand-alone client. Hence, i feel the bug is related to accessing the EJB from a war, both deployed in a single JBOSS instance. The version I am using is 4.0.2. Can anyone suggest a fix/workaround for this ?

03:01:26,104 INFO [STDOUT] at java.lang.Thread.run(Thread.java:536)
03:01:26,114 INFO [STDOUT] Caused by: javax.ejb.EJBException: Invalid invocation, check your deployment packaging, meth
od=public abstract test.ejb.TestEJBInterface test.ejb.TestEJBHome.create() throws javax.ejb.CreateException,java.rmi.RemoteException

  • 1. Re: EJBException:Invalid invokation Exception while accessin
    ebrain13 Newbie

    A complete stack trace would give more insight into your problem


  • 2. Re: EJBException:Invalid invokation Exception while accessin
    upankar das Newbie

    Following is the full trace :

    04:03:33,714 INFO [STDOUT] java.rmi.ServerException: EJBException:; nested exception is:
    javax.ejb.EJBException: Invalid invocation, check your deployment packaging, method=public abstract test.ejb.TestEJBInterface test.ejb.TestEJBHome.create() throws javax.ejb.CreateException,java.rmi.RemoteExce
    ption
    04:03:33,714 INFO [STDOUT] at org.jboss.ejb.plugins.LogInterceptor.handleException(LogInterceptor.java:352)
    04:03:33,724 INFO [STDOUT] at org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:125)
    04:03:33,724 INFO [STDOUT] at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invokeHome(ProxyFactoryFinderInte
    rceptor.java:93)
    04:03:33,724 INFO [STDOUT] at org.jboss.ejb.SessionContainer.internalInvokeHome(SessionContainer.java:613)
    04:03:33,724 INFO [STDOUT] at org.jboss.ejb.Container.invoke(Container.java:894)
    04:03:33,724 INFO [STDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    04:03:33,724 INFO [STDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    04:03:33,724 INFO [STDOUT] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

    04:03:33,724 INFO [STDOUT] at java.lang.reflect.Method.invoke(Method.java:324)
    04:03:33,724 INFO [STDOUT] at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
    04:03:33,724 INFO [STDOUT] at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
    04:03:33,724 INFO [STDOUT] at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
    04:03:33,724 INFO [STDOUT] at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:249)
    04:03:33,724 INFO [STDOUT] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
    04:03:33,734 INFO [STDOUT] at org.jboss.invocation.local.LocalInvoker$MBeanServerAction.invoke(LocalInvoker.java:15
    5)
    04:03:33,734 INFO [STDOUT] at org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:104)
    04:03:33,734 INFO [STDOUT] at org.jboss.invocation.InvokerInterceptor.invokeLocal(InvokerInterceptor.java:179)
    04:03:33,734 INFO [STDOUT] at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:165)
    04:03:33,734 INFO [STDOUT] at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:46)
    04:03:33,734 INFO [STDOUT] at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:55)
    04:03:33,734 INFO [STDOUT] at org.jboss.proxy.ejb.HomeInterceptor.invoke(HomeInterceptor.java:169)
    04:03:33,734 INFO [STDOUT] at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:86)
    04:03:33,734 INFO [STDOUT] at $Proxy87.create(Unknown Source)

  • 3. Re: EJBException:Invalid invokation Exception while accessin
    ebrain13 Newbie

     

    04:03:33,724 INFO [STDOUT] at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
    04:03:33,724 INFO [STDOUT] at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:249)
    04:03:33,724 INFO [STDOUT] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
    04:03:33,734 INFO [STDOUT] at org.jboss.invocation.local.LocalInvoker$MBeanServerAction.invoke(LocalInvoker.java:15
    5)
    04:03:33,734 INFO [STDOUT] at org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:104)
    04:03:33,734 INFO [STDOUT] at org.jboss.invocation.InvokerInterceptor.invokeLocal(InvokerInterceptor.java:179)
    04:03:33,734 INFO [STDOUT] at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:165)



    Looking at the above lines in stack trace, tells me that there is local invocation of the bean being tried. The exception is right , check your deployment descriptor, especially jboss.xml for the jndi you are supposed to use for the remote lookup.

    HTH,
    Vikram.


  • 4. Re: EJBException:Invalid invokation Exception while accessin
    upankar das Newbie

    Solved it with the following 3 steps:
    1] Edit conf/jboss-service.xml and make CallByValue as 'true' in NamingService as below

    <mbean code="org.jboss.naming.NamingService"
    name="jboss:service=Naming"
    xmbean-dd="resource:xmdesc/NamingService-xmbean.xml">
    true


    2] Edit deploy/ear-deployer.xml, and set Isloated and CallByValue as true

    3]Edit deploy\jbossweb-tomcat55.sar\META-INF\jboss-service.xml , and set Java2ClassLoadingCompilance and UseJbossWebLoader attributes as false

    Thanks Guys..

    - Upankar

  • 5. Re: EJBException:Invalid invokation Exception while accessin
    JasonCao Newbie

    By my testing , I found the last step should set value to true to solve this problem, because the orgin value is false in jboss.

    true
    true

    Is this right?

  • 6. Re: EJBException:Invalid invokation Exception while accessin
    H.-C.Gürsoy Newbie

     

    "jasoncao" wrote:
    By my testing , I found the last step should set value to true to solve this problem, because the orgin value is false in jboss.

    <attribute name="Java2ClassLoadingCompliance">true</attribute>
     <attribute name="UseJBossWebLoader">true</attribute>


    Is this right?


    Hi,

    yeah, i can confrim with. It works for me setting the last two flags to true.
    I have loosed one day to check out why a simple lookup out of a servlet doesn't run anymore :-(



  • 7. Re: EJBException:Invalid invokation Exception while accessin
    Nikolay Gorylenko Newbie

     

    "jasoncao" wrote:
    By my testing , I found the last step should set value to true to solve this problem, because the orgin value is false in jboss.

    <attribute name="Java2ClassLoadingCompliance">true</attribute>
    <attribute name="UseJBossWebLoader">true</attribute>

    Is this right?

    Documentation (http://docs.jboss.org/jbossas/jboss4guide/r3/html/pr05.html#conf) proposes to set them "false"...

  • 8. Re: EJBException:Invalid invokation Exception while accessin
    xiao feng Newbie

    I use the same version JBoss AS, I meet the very problem too. I modify related configurations according to tips here, now the problem does not exist;

    But I get another problem, when I package related war (web module) and jar (Ejb module) into one ear (J2ee application module) and deploy them into JBoss AS, I get exceptions.

    The problem is very surprising, when I deploy the two module separately into the server, the problem does not exist.

    Detailed exception stack trace lists here, please teach me how to solve it, thanks:

    14:22:33,578 ERROR [[/amri-web]] Cannot instantiate class: org.jnp.interfaces.Na
    mingContextFactory
    javax.naming.NoInitialContextException: Cannot instantiate class: org.jnp.interf
    aces.NamingContextFactory. Root exception is
    java.lang.ClassCastException: org.jnp.interfaces.NamingContextFactory
    at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:6
    59)
    at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:250
    )
    at javax.naming.InitialContext.init(InitialContext.java:226)
    at javax.naming.InitialContext.(InitialContext.java:202)
    at XXXXXXXXXXXXXXXXXXXXXXXXXXXX.init(GlobalInit.java:70)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.
    java:1091)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:92
    5)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContex
    t.java:3857)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4
    118)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase
    .java:759)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:73
    9)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
    java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.apache.commons.modeler.BaseModelMBean.invoke(BaseModelMBean.java:
    503)
    at org.jboss.mx.server.RawDynamicInvoker.invoke(RawDynamicInvoker.java:1
    50)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
    at org.apache.catalina.core.StandardContext.init(StandardContext.java:50
    05)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
    java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.apache.commons.modeler.BaseModelMBean.invoke(BaseModelMBean.java:
    503)
    at org.jboss.mx.server.RawDynamicInvoker.invoke(RawDynamicInvoker.java:1
    50)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
    at org.jboss.web.tomcat.tc5.TomcatDeployer.performDeployInternal(TomcatD
    eployer.java:274)
    at org.jboss.web.tomcat.tc5.TomcatDeployer.performDeploy(TomcatDeployer.
    java:91)
    at org.jboss.web.AbstractWebDeployer.start(AbstractWebDeployer.java:357)

    at org.jboss.web.WebModule.startModule(WebModule.java:68)
    at org.jboss.web.WebModule.startService(WebModule.java:46)
    at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanS
    upport.java:272)
    at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMB
    eanSupport.java:222)
    at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatch
    er.java:141)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.
    java:249)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
    at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceControl
    ler.java:897)
    at $Proxy0.start(Unknown Source)
    at org.jboss.system.ServiceController.start(ServiceController.java:418)
    at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatch
    er.java:141)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.
    java:249)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
    at $Proxy28.start(Unknown Source)
    at org.jboss.web.AbstractWebContainer.start(AbstractWebContainer.java:39
    4)
    at org.jboss.deployment.MainDeployer.start(MainDeployer.java:964)
    at org.jboss.deployment.MainDeployer.start(MainDeployer.java:956)
    at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:775)
    at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:738)
    at sun.reflect.GeneratedMethodAccessor48.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatch
    er.java:141)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
    at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractIntercept
    or.java:121)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
    at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelM
    BeanOperationInterceptor.java:127)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.
    java:249)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
    at $Proxy8.deploy(Unknown Source)
    at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymen
    tScanner.java:325)
    at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentS
    canner.java:501)
    at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.
    doScan(AbstractDeploymentScanner.java:204)
    at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(A
    bstractDeploymentScanner.java:277)
    at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanS
    upport.java:272)
    at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMB
    eanSupport.java:222)
    at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatch
    er.java:141)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.
    java:249)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
    at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceControl
    ler.java:897)
    at $Proxy0.start(Unknown Source)
    at org.jboss.system.ServiceController.start(ServiceController.java:418)
    at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatch
    er.java:141)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.
    java:249)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
    at $Proxy4.start(Unknown Source)
    at org.jboss.deployment.SARDeployer.start(SARDeployer.java:273)
    at org.jboss.deployment.MainDeployer.start(MainDeployer.java:964)
    at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:775)
    at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:738)
    at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:722)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
    java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatch
    er.java:141)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
    at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractIntercept
    or.java:121)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
    at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelM
    BeanOperationInterceptor.java:127)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.
    java:249)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
    at $Proxy5.deploy(Unknown Source)
    at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:434)
    at org.jboss.system.server.ServerImpl.start(ServerImpl.java:315)
    at org.jboss.Main.boot(Main.java:195)
    at org.jboss.Main$1.run(Main.java:463)
    at java.lang.Thread.run(Thread.java:595)

  • 9. Re: EJBException:Invalid invokation Exception while accessin
    Frederic Rouyre Newbie

    For me, the solution to the problem was to remove the client jar from the /WEB-INF/lib directory, as suggested in an other post.

    Normal or not?

  • 10. Re: EJBException:Invalid invokation Exception while accessin
    xiao feng Newbie

    There are no any JBoss itself's libraries int he war file!

    What's the real reason?

  • 11. Re: EJBException:Invalid invokation Exception while accessin
    xiao feng Newbie

    File jbossall-client.jar does not exist the war
    file.

    Please confirm the real reason!

    Thanks!

  • 12. Re: EJBException:Invalid invokation Exception while accessin
    vinsinraw Newbie

    I had the similar issue, but on JBOSS 5.1.

    I created an EJB project associated with an EAR and deployed the EAR.

    Again I created new dynamic web project with a single servlet having logics to access my remote bean method. I deployed in the same JBOSS instance. I was getting the similar exception "javax.ejb.EJBException: Invalid invocation, check your deployment packaging......"

     

    I did only two steps out of three and it worked for me.

     

    1. Modified jboss-service.xml   @ \jboss-5.1.0.GA\server\default\conf\jboss-service.xml

    Modify attribute CallByValue to true in the following code snippet.

     

    <mbean code="org.jboss.naming.NamingService"

          name="jboss:service=Naming"

          xmbean-dd="resource:xmdesc/NamingService-xmbean.xml">

          <!-- The call by value mode. true if all lookups are unmarshalled using

             the caller's TCL, false if in VM lookups return the value by reference.

          -->

          <attribute name="CallByValue">true</attribute>

    ...

    ...

     

     

    2. Modifed ear-deployer-jboss-beans.xml       @ \jboss-5.1.0.GA\server\default\deployers\ear-deployer-jboss-beans.xml

    Again modify property CallByValue to true. Also modify property isolated to true.

     

    Here is the code snippet for better view..

     

    <!-- A flag indicating if the ear components should have in VM call

             optimization disabled.

          -->

          <property name="callByValue">true</property>

     

          <!-- Specify an unauthenticated identity -->

          <property name="unauthenticatedIdentity">anonymous</property>   

       </bean>

       <bean name="EARClassLoaderDeployer" class="org.jboss.deployment.EarClassLoaderDeployer">

          <!-- A flag indicating if ear deployments should have their own scoped

             class loader to isolate their classes from other deployments.

          -->     

          <property name="isolated">true</property>

       </bean>

  • 13. Re: EJBException:Invalid invokation Exception while accessin
    Wolf-Dieter Fink Master

    You should not reactivate such old account.

     

    For better help on you problem you should please post the Exception.

    Also what if you reject your configuration changes ?