0 Replies Latest reply on Aug 6, 2007 3:58 PM by jbelis

    java.lang.IllegalArgumentException: Unable to find operation

    jbelis

      Hi,

      I am using jboss 4.0.5 GA installed with JEMS 1.2.0 (ejb3-clustered). I assume the EJB version that is used as a result is
      EJB 3.0 RC9 - Patch 1
      although I can't really tell from my installation.

      I am trying to have an ejb3 module invoke an operation exposed by an mbean deployed outside the ear file that contains my ejb. It says it is unable to find the operation despite the fact that I can see it using the jmx console. What seems to be happening is that arguments are lost along the way.

      Here is the stack trace:

      java.lang.IllegalArgumentException: Unable to find operation lookupDataSource()
       at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:231)
       at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
       at org.jboss.invocation.jrmp.server.JRMPProxyFactory.invoke(JRMPProxyFactory.java:175)
       at sun.reflect.GeneratedMethodAccessor90.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
       at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
       at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
       at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
       at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
       at org.jboss.invocation.local.LocalInvoker$MBeanServerAction.invoke(LocalInvoker.java:169)
       at org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:118)
       at org.jboss.invocation.InvokerInterceptor.invokeLocal(InvokerInterceptor.java:209)
       at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:195)
       at org.jboss.jmx.connector.invoker.client.InvokerAdaptorClientInterceptor.invoke(InvokerAdaptorClientInterceptor.java:66)
       at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:70)
       at org.jboss.proxy.ClientMethodInterceptor.invoke(ClientMethodInterceptor.java:74)
       at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:100)
       at $Proxy150.lookupDataSource(Unknown Source)
      


      lookupDataSource actually takes 2 arguments. I can see the arguments in the jmx console.

      The same exact code and configuration works on 4.0.4GA (non-clustered)

      I looked at bug
      http://jira.jboss.org/jira/browse/EJBTHREE-868
      which has some similarities with my problem. Unfortunately given the lack of context provided in the bug report, it is hard to assert the issue is the same.

      I have not upgraded to 4.2.x and would prefer not to if I can avoid it.

      Thanks in advance for the help.