You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@geronimo.apache.org by Florian Schaetz <fl...@optitool.de> on 2010/06/02 12:04:01 UTC
WebService - AxisFault - Wrong number of Arguments
Hello,
after having some problems with a more complicated WebService, I've
written a simple testing WebService, which has one method, that takes a
String and gives back a Result-Object (containing only a status int,
which is zero).
After using wsgen to create the WSDL file and the jaxws classes I
deployed the WebService to my (freshly downloaded) Geronimo 2.2 (with
Tomcat) which shows no errors (the Webservice gets started and can be
accessed via a browser, giving the "Hello, this is the..." message).
But as soon as I try to access it with a java client (created from the
online WSDL per wsimport), I get the following exception (I put both
whole stacktraces, client and server, at the end of this mail):
java.lang.IllegalArgumentException: wrong number of arguments
_But_ the important thing is: When I deploy the exact same .jar in my
older Geronimo 2.1.4, the exact same client works perfectly fine,
returning a Result-Objekt (with the mentioned zero int).
Has anyone an idea what the reason could be?
Regards,
Flo
The exception is:
xception in thread "main" javax.xml.ws.soap.SOAPFaultException:
java.rmi.RemoteException: The bean encountered a non-application
exception; nested exception is:
java.lang.IllegalArgumentException: wrong number of arguments: The bean
encountered a non-application exception; nested exception is:
java.lang.IllegalArgumentException: wrong number of arguments
at
com.sun.xml.internal.ws.fault.SOAP11Fault.getProtocolException(SOAP11Fault.java:178)
at
com.sun.xml.internal.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:119)
at
com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:108)
at
com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:78)
at com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:107)
at $Proxy29.geoCode(Unknown Source)
at de.optitool.optengine.geocode.Client.main(Client.java:14)
In the geronimo.log file, the exception looks a little bit longer:
2010-06-02 11:43:59,561 ERROR [AxisEngine] java.rmi.RemoteException: The
bean encountered a non-application exception; nested exception is:
java.lang.IllegalArgumentException: wrong number of arguments: The bean
encountered a non-application exception; nested exception is:
java.lang.IllegalArgumentException: wrong number of arguments
org.apache.axis2.AxisFault: java.rmi.RemoteException: The bean
encountered a non-application exception; nested exception is:
java.lang.IllegalArgumentException: wrong number of arguments: The bean
encountered a non-application exception; nested exception is:
java.lang.IllegalArgumentException: wrong number of arguments
at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
at
org.apache.geronimo.axis2.ejb.EJBMessageReceiver.receive(EJBMessageReceiver.java:105)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:173)
at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:167)
at
org.apache.geronimo.axis2.Axis2WebServiceContainer.processXMLRequest(Axis2WebServiceContainer.java:437)
at
org.apache.geronimo.axis2.Axis2WebServiceContainer.processPOSTRequest(Axis2WebServiceContainer.java:386)
at
org.apache.geronimo.axis2.Axis2WebServiceContainer.doService2(Axis2WebServiceContainer.java:308)
at
org.apache.geronimo.axis2.Axis2WebServiceContainer.doService(Axis2WebServiceContainer.java:243)
at
org.apache.geronimo.axis2.Axis2WebServiceContainer.invoke(Axis2WebServiceContainer.java:201)
at
org.apache.geronimo.tomcat.TomcatEJBWebServiceContext$EJBWebServiceValve.handle(TomcatEJBWebServiceContext.java:111)
at
org.apache.geronimo.tomcat.TomcatEJBWebServiceContext$EJBWebServiceValve.invoke(TomcatEJBWebServiceContext.java:81)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:567)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:361)
at org.apache.geronimo.pool.ThreadPool$1.run(ThreadPool.java:214)
at
org.apache.geronimo.pool.ThreadPool$ContextClassLoaderRunnable.run(ThreadPool.java:344)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: org.apache.openejb.InvalidateReferenceException:
java.rmi.RemoteException: The bean encountered a non-application
exception; nested exception is:
java.lang.IllegalArgumentException: wrong number of arguments: The bean
encountered a non-application exception; nested exception is:
java.lang.IllegalArgumentException: wrong number of arguments
at
org.apache.openejb.core.transaction.EjbTransactionUtil.handleSystemException(EjbTransactionUtil.java:153)
at
org.apache.openejb.core.stateless.StatelessContainer._invoke(StatelessContainer.java:233)
at
org.apache.openejb.core.stateless.StatelessContainer.invoke(StatelessContainer.java:174)
at
org.apache.openejb.core.stateless.StatelessContainer.invoke(StatelessContainer.java:136)
at
org.apache.geronimo.axis2.ejb.EJBMessageReceiver.receive(EJBMessageReceiver.java:99)
... 22 more
Caused by: java.rmi.RemoteException: The bean encountered a
non-application exception; nested exception is:
java.lang.IllegalArgumentException: wrong number of arguments
at
org.apache.openejb.core.transaction.EjbTransactionUtil.handleSystemException(EjbTransactionUtil.java:152)
... 26 more
Caused by: java.lang.IllegalArgumentException: wrong number of arguments
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
org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:158)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:141)
at
org.apache.openejb.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:122)
at
org.apache.openejb.core.stateless.StatelessContainer._invoke(StatelessContainer.java:221)
... 25 more
Re: WebService - AxisFault - Wrong number of Arguments
Posted by Florian Schaetz <fl...@optitool.de>.
Hello Ivan,
> Some changes have been committed to 2.2-branch in r952898, you could
> download the snapshot build if want to try it.
I've tried to download the latest snapshot, but as I can't even start
this version of the server (probably related to the fact, that there
have been - non-crc - errors when decompressing the archive, like "path
not found" or "filename to long"), I'll simply have wait for the
official 2.2.1 release :-)
Flo
Re: WebService - AxisFault - Wrong number of Arguments
Posted by Ivan <xh...@gmail.com>.
Some changes have been committed to 2.2-branch in r952898, you could
download the snapshot build if want to try it.
2010/6/9 Florian Schaetz <fl...@optitool.de>
> Hi Ivan,
>
>
> Just try the attached example, seems that Geronimo ( or OpenEJB)
>> does not process the web service request correctly, will fix it in the
>> incoming Geronimo 2.2.1.
>> Thanks for reporting this !
>>
>
> Thanks in advance for fixing this :-)
>
> Flo
>
--
Ivan
Re: WebService - AxisFault - Wrong number of Arguments
Posted by Florian Schaetz <fl...@optitool.de>.
Hi Ivan,
> Just try the attached example, seems that Geronimo ( or OpenEJB)
> does not process the web service request correctly, will fix it in the
> incoming Geronimo 2.2.1.
> Thanks for reporting this !
Thanks in advance for fixing this :-)
Flo
Re: WebService - AxisFault - Wrong number of Arguments
Posted by Ivan <xh...@gmail.com>.
Hi, Florian:
Just try the attached example, seems that Geronimo ( or OpenEJB) does
not process the web service request correctly, will fix it in the incoming
Geronimo 2.2.1.
Thanks for reporting this !
2010/6/4 Florian Schaetz <fl...@optitool.de>
> Hello,
>
>
> Seems that you are exposing the EJB as web service, so could you attach
>> the simple testing web service example ?
>>
>
> Of course. I've attached the interface, the implementation and the
> openejb-jar.xml. The MyService class already contains the WSDL-Location
> (which was just generated with wsgen, so I didn't attach it).
>
> If you need the wsdl (and jaxws) files as well, I've uploaded the whole
> thing as an archive:
> http://home.arcor.de/irian/WebServiceTest.rar
>
> Thanks,
>
> Flo
>
--
Ivan
Re: WebService - AxisFault - Wrong number of Arguments
Posted by Florian Schaetz <fl...@optitool.de>.
Hello,
> Seems that you are exposing the EJB as web service, so could you attach
> the simple testing web service example ?
Of course. I've attached the interface, the implementation and the
openejb-jar.xml. The MyService class already contains the WSDL-Location
(which was just generated with wsgen, so I didn't attach it).
If you need the wsdl (and jaxws) files as well, I've uploaded the whole
thing as an archive:
http://home.arcor.de/irian/WebServiceTest.rar
Thanks,
Flo
Re: WebService - AxisFault - Wrong number of Arguments
Posted by Ivan <xh...@gmail.com>.
Seems that you are exposing the EJB as web service, so could you attach the
simple testing web service example ?
2010/6/2 Florian Schaetz <fl...@optitool.de>
> Hello,
>
> after having some problems with a more complicated WebService, I've written
> a simple testing WebService, which has one method, that takes a String and
> gives back a Result-Object (containing only a status int, which is zero).
>
> After using wsgen to create the WSDL file and the jaxws classes I deployed
> the WebService to my (freshly downloaded) Geronimo 2.2 (with Tomcat) which
> shows no errors (the Webservice gets started and can be accessed via a
> browser, giving the "Hello, this is the..." message).
>
> But as soon as I try to access it with a java client (created from the
> online WSDL per wsimport), I get the following exception (I put both whole
> stacktraces, client and server, at the end of this mail):
>
> java.lang.IllegalArgumentException: wrong number of arguments
>
> _But_ the important thing is: When I deploy the exact same .jar in my older
> Geronimo 2.1.4, the exact same client works perfectly fine, returning a
> Result-Objekt (with the mentioned zero int).
>
> Has anyone an idea what the reason could be?
>
> Regards,
>
> Flo
>
> The exception is:
>
> xception in thread "main" javax.xml.ws.soap.SOAPFaultException:
> java.rmi.RemoteException: The bean encountered a non-application exception;
> nested exception is:
> java.lang.IllegalArgumentException: wrong number of arguments: The
> bean encountered a non-application exception; nested exception is:
> java.lang.IllegalArgumentException: wrong number of arguments
> at
> com.sun.xml.internal.ws.fault.SOAP11Fault.getProtocolException(SOAP11Fault.java:178)
> at
> com.sun.xml.internal.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:119)
> at
> com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:108)
> at
> com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:78)
> at
> com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:107)
> at $Proxy29.geoCode(Unknown Source)
> at de.optitool.optengine.geocode.Client.main(Client.java:14)
>
> In the geronimo.log file, the exception looks a little bit longer:
>
> 2010-06-02 11:43:59,561 ERROR [AxisEngine] java.rmi.RemoteException: The
> bean encountered a non-application exception; nested exception is:
> java.lang.IllegalArgumentException: wrong number of arguments: The
> bean encountered a non-application exception; nested exception is:
> java.lang.IllegalArgumentException: wrong number of arguments
> org.apache.axis2.AxisFault: java.rmi.RemoteException: The bean encountered
> a non-application exception; nested exception is:
> java.lang.IllegalArgumentException: wrong number of arguments: The
> bean encountered a non-application exception; nested exception is:
> java.lang.IllegalArgumentException: wrong number of arguments
> at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
> at
> org.apache.geronimo.axis2.ejb.EJBMessageReceiver.receive(EJBMessageReceiver.java:105)
> at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:173)
> at
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:167)
> at
> org.apache.geronimo.axis2.Axis2WebServiceContainer.processXMLRequest(Axis2WebServiceContainer.java:437)
> at
> org.apache.geronimo.axis2.Axis2WebServiceContainer.processPOSTRequest(Axis2WebServiceContainer.java:386)
> at
> org.apache.geronimo.axis2.Axis2WebServiceContainer.doService2(Axis2WebServiceContainer.java:308)
> at
> org.apache.geronimo.axis2.Axis2WebServiceContainer.doService(Axis2WebServiceContainer.java:243)
> at
> org.apache.geronimo.axis2.Axis2WebServiceContainer.invoke(Axis2WebServiceContainer.java:201)
> at
> org.apache.geronimo.tomcat.TomcatEJBWebServiceContext$EJBWebServiceValve.handle(TomcatEJBWebServiceContext.java:111)
> at
> org.apache.geronimo.tomcat.TomcatEJBWebServiceContext$EJBWebServiceValve.invoke(TomcatEJBWebServiceContext.java:81)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:567)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
> at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
> at
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:361)
> at org.apache.geronimo.pool.ThreadPool$1.run(ThreadPool.java:214)
> at
> org.apache.geronimo.pool.ThreadPool$ContextClassLoaderRunnable.run(ThreadPool.java:344)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:619)
> Caused by: org.apache.openejb.InvalidateReferenceException:
> java.rmi.RemoteException: The bean encountered a non-application exception;
> nested exception is:
> java.lang.IllegalArgumentException: wrong number of arguments: The
> bean encountered a non-application exception; nested exception is:
> java.lang.IllegalArgumentException: wrong number of arguments
> at
> org.apache.openejb.core.transaction.EjbTransactionUtil.handleSystemException(EjbTransactionUtil.java:153)
> at
> org.apache.openejb.core.stateless.StatelessContainer._invoke(StatelessContainer.java:233)
> at
> org.apache.openejb.core.stateless.StatelessContainer.invoke(StatelessContainer.java:174)
> at
> org.apache.openejb.core.stateless.StatelessContainer.invoke(StatelessContainer.java:136)
> at
> org.apache.geronimo.axis2.ejb.EJBMessageReceiver.receive(EJBMessageReceiver.java:99)
> ... 22 more
> Caused by: java.rmi.RemoteException: The bean encountered a non-application
> exception; nested exception is:
> java.lang.IllegalArgumentException: wrong number of arguments
> at
> org.apache.openejb.core.transaction.EjbTransactionUtil.handleSystemException(EjbTransactionUtil.java:152)
> ... 26 more
> Caused by: java.lang.IllegalArgumentException: wrong number of arguments
> 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
> org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:158)
> at
> org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:141)
> at
> org.apache.openejb.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:122)
> at
> org.apache.openejb.core.stateless.StatelessContainer._invoke(StatelessContainer.java:221)
> ... 25 more
>
--
Ivan