Hello!

I'd to migrate to xfire from a old, Axis1 WS that contains INOUT-parameters, I 
must support. Unfortunately, I get a wrong number of arguments error. The error 
 may be related with XFIRE-777. 

Here my INOUT example 
// Interface
@WebService
public interface IInOutParamService {
        
    
    public String example(String in, 
@WebParam(name="testname",mode=WebParam.Mode.INOUT) StringHolder inout);
}



// Client
      Service serviceModel = new 
AnnotationServiceFactory().create(InOutParamServiceImpl.class);
      try {
          IInOutParamService service = (IInOutParamService) new 
XFireProxyFactory().create(serviceModel, 
"http://localhost:8080/xfireanno/services/HelloService";);
          String in = "in";
          StringHolder inout = new StringHolder("inout");

          String s = service.example(in, inout);

// Error!

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:585)
        at 
org.codehaus.xfire.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:54)
        at 
org.codehaus.xfire.service.binding.ServiceInvocationHandler.sendMessage(ServiceInvocationHandler.java:271)
        at 
org.codehaus.xfire.service.binding.ServiceInvocationHandler$1.run(ServiceInvocationHandler.java:84)
        at 
org.codehaus.xfire.service.binding.ServiceInvocationHandler.execute(ServiceInvocationHandler.java:132)
        at 
org.codehaus.xfire.service.binding.ServiceInvocationHandler.invoke(ServiceInvocationHandler.java:107)
        at 
org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131)
        at 
org.codehaus.xfire.transport.DefaultEndpoint.onReceive(DefaultEndpoint.java:64)
        at 
org.codehaus.xfire.transport.AbstractChannel.receive(AbstractChannel.java:38)
        at 
org.codehaus.xfire.transport.http.XFireServletController.invoke(XFireServletController.java:301)
        at 
org.codehaus.xfire.transport.http.XFireServletController.doService(XFireServletController.java:130)
        at 
org.codehaus.xfire.transport.http.XFireServlet.doPost(XFireServlet.java:116)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)

Can any body help me?

Thanks.
Kuno

Reply via email to