Hi,
 
I need to invoke a web service that takes in a void type and returns a Vector. Thanks to Venkatesh Kancherla, I am able to do the Vector part fine. But I am now stuck with the void thing. (I am using Java)
what do I need to do in the client if I have a service that takes in a void?

Here's my situation:
I have 2 services:
One takes in Order class (custom, used the beanSerializer and it works fine) and returns a void. For this, in the client, I called addParameter() with my custom Qname that I created with the beanSerializer, but didnot specify anything fo the return type. (Did not call setReturnType() at all)
This works fine.
 
Another service takes in a void and returns a Vector. Now, I have to call setReturnType() with a QName for Vector, that I created. It is fine. But if I dont call call.addParameter(), it throws an AxisFault, saying "addParameter() should be called along with setReturnType()". So my question is, how should I call addParameter() for this?
 
I am giving my code fragment below
 
Thanks a lot,
Sam
 
------
Vector retVector = new Vector(); 
String serviceURL = http://localhost:8080/axis/services/SamService;
   
   Service  service = new Service();
   Call     call    = (Call) service.createCall();
   call.setTargetEndpointAddress( new java.net.URL(serviceURL) );
   call.setOperationName( new QName("SamService", "serviceMethod") );

// HOW SHOULD THIS BE???   
  // QName qVoid=new QName("samNS","void");
    //        call.addParameter( "arg1", qVoid, ParameterMode.IN);

   QName qVec=new QName("samNS","Vector");
   call.setReturnType( qVec ); 
   retVector = (Vector) call.invoke();
 
------
 
My corresponding deploy.wsdd file is
------
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
            xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
 <service name="SamService" provider="java:RPC">
  <parameter name="className" value="myPackage.SamClass"/>
  <parameter name="allowedMethods" value="*"/>
  <beanMapping qname="samNS:Order" xmlns:samNS="urn:OrderService" languageSpecificType="myPackage.Order"/>
 </service>
</deployment>
-----




Do you Yahoo!?
Yahoo! Finance: Get your refund fast by filing online

Reply via email to