Hi,

you are using instant deployment and you need deployment descriptors.
In the deployment  descriptor it is possible to define the services
and to define also the classes of the response using <bean-mapping>
tag.

Example:
<deployment xmlns="http://xml.apache.org/axis/wsdd/";
    xmlns:java="http://xml.apache.org/axis/wsdd/providers/java";>
    <service name="WS_NAME" provider="java:RPC">
        <parameter name="className" value="package_name.class_name/>
        <parameter name="allowedMethods" value="*"/>
        <beanMapping qname="myNS:ReturnFlight "
xmlns:myNS="urn:class_name"
languageSpecificType="java:package.ReturnFlight "/>

</service>
</deployment>

For deployment you need execute org.apache.axis.client.AdminClient.

It's a simple orientation, click this link for more information and
search WSDD/BeanMapping :
http://ws.apache.org/axis/java/user-guide.html

I hope to have been for you useful!
 


On Wed, 17 Nov 2004 09:22:57 +0100, Daniela CLARO <[EMAIL PROTECTED]> wrote:
>  
> 
> Hi all, 
>   
> I am having a problem with my web service. I've created a web service that
> it has a signature as below: 
> 
> public ReturnFlight findFlight(String fromCity, String toCity, String
> dtDeparture, String dtArrival){ 
> 
> Where ReturnFlight is a class that I defined earlier with two attibutes. 
> 
> I am using AXIS 1.2 and I put this class (ReturnedFlight) into
> WEB-INF/classes. My web service is published on
> http://localhost:8080/Flight.jws. And the problem is that when I run my
> simple Axis example to execute my web service, at first time it gave me a
> message that I did not have serialized my class bean(ReturnedFlight). 
> 
>  I've tried to solve this problem putting the server-config.wsdd in my
> WEB-INF directory, but when I do that I receive an error execution on my
> http://localhost:8080/Flight.jws. The problem is actually occuring when I
> try this code in AXIS: 
> 
>  call.setReturnType( XMLType.XSD_ANYTYPE );  ReturnFlight ret = new
> ReturnFlight(); 
>        ret = (ReturnFlight) call.invoke( new Object [] { fromCity,
> toCity,dtDeparture,dtArrival }); 
> 
> I did not get any answer because I think it did not know how to work with my
> ReturnFlight class. 
> 
> One more thing, if I am monitoring on the server side(Tomcat), I can saw
> that my service has got actually the result that I want, but it did not
> arrive to the client side. 
> 
> What do I must do to manage a class on returning parameters? 
> 
> Here below, I put my server-config.wsdd, I do not know if it is correctly or
> not... 
> 
> Help me, please!!! 
> 
> <?xml version="1.0" encoding="UTF-8"?> 
> <deployment xmlns="http://xml.apache.org/axis/wsdd/"; 
> xmlns:java="http://xml.apache..org/axis/wsdd/providers/java";> 
> 
> <service name= "Flight" provider= "java:RPC" style="rpc" use= "encoded"> 
> 
> <parameter name= "wsdlTargetNamespace" value=
> "http://localhost:8080/travelws/Flight.jws"/> 
> <parameter name= "wsdlServiceElement" value= "Flight"/> <parameter name=
> "wsdlServicePort" value= "Flight"/> <parameter name= "className" value=
> "ReturnFlight"/> <parameter name= "wsdlPortType " value= "Flight"/> 
> 
> <operation name= "findFlight" qname= "operNS:findFlight" 
>     xmlns:operNS= "http://localhost:8080/travelws/Flight.jws"; 
>         returnQName= "findFlightReturn" returnType= "rtns:ReturnFlight" 
>         xmlns:rtns= "http://DefaultNamespace";> </operation > <parameter
> name= "allowedMethods " value= "findFlight"/> 
> 
> <typeMapping 
> xmlns:ns= "http://DefaultNamespace"; 
> qname= "ns:ReturnFlight" 
> type= "ReturnFlight" 
> serializer= "org.apache.axis.encoding.ser.BeanSerializerFactory " 
> deserializer= "org.apache.axis.encoding.ser.BeanDeserializerFactory " 
> encodingStyle= " http://schemas.xmlsoap.org/soap/encoding/"; /> </service >
> </deployment> 
>  
> 
> Increasing my explanation, when I run without server-config.wsdd I receive
> this error: 
> 
> java.io.IOException: No serializer found for class ReturnFlight in registry 
> [EMAIL PROTECTED] 
>         org.apache.axis.AxisFault.makeFault(AxisFault.java:137) 
>         org.apache.axis.SOAPPart.writeTo(SOAPPart.java:306) 
>         org.apache.axis.SOAPPart.getAsString(SOAPPart.java:524) 
>         org.apache.axis.SOAPPart.getAsBytes(SOAPPart.java:422) 
>         org.apache.axis.Message.getContentType(Message.java:483) 
>   
> org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:682) 
>         javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
>   
> org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:
> 339) 
>  
>  
> 
> Thank you so much, 
> Daniela

Reply via email to