You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Daniela CLARO <da...@eseo.fr> on 2004/11/18 17:00:58 UTC

RE: Class as WS return parameter - Resolution

Hi all, 
 I've got it!!!
Here is my Client.java:

...
       Service  service = new Service();
       Call     call    = (Call) service.createCall();
       
       System.out.println("Antes do Qname");
      QName qn = new QName("urn:Flight","ReturnFlight");
      
       call.registerTypeMapping(ReturnFlight.class, qn,
                      new
org.apache.axis.encoding.ser.BeanSerializerFactory(ReturnFlight.class, qn),

                      new
org.apache.axis.encoding.ser.BeanDeserializerFactory(ReturnFlight.class,
qn)); 

      
      System.out.println("Depoisdo Qname");
       
       
       call.setTargetEndpointAddress( new java.net.URL(endpoint) );
	   call.setOperationName(new QName(method));     
       call.addParameter( "fromCity", XMLType.XSD_STRING, ParameterMode.IN
);
       call.addParameter( "toCity", XMLType.XSD_STRING, ParameterMode.IN );
       call.addParameter( "dtDeparture", XMLType.XSD_STRING,
ParameterMode.IN );
       call.addParameter( "dtArrival", XMLType.XSD_STRING, ParameterMode.IN
);      
       
       
	   call.setReturnType(qn);
	   
 
       System.out.println("Ate aqui tudo OK... ");
       
       ReturnFlight ret = new ReturnFlight();
       
       ret = (ReturnFlight) call.invoke( new Object [] { fromCity,
toCity,dtDeparture,dtArrival });
      
       System.out.println("***********************************");
       System.out.println("ResultadoFlight : " + ret);
       System.out.println("ResultadoFlight : " + ret.getNumberFlight());
       System.out.println("ResultadoPrice : " + ret.getPrice());
...

And here is my deployed service:
 <service name="FlightFinder" provider="java:RPC">
  <parameter name="allowedMethods" value="findFlight"/>
  <parameter name="className" value="Flight"/>
  <beanMapping languageSpecificType="java:ReturnFlight"
qname="ns1:ReturnFlight"
 xmlns:ns1="urn:Flight"/>
 </service>

Thank you!!!
Daniela