[Apache/AXIS] Pb pour récupérer un bean

Pb pour récupérer un bean [Apache/AXIS] - Java - Programmation

Marsh Posté le 23-07-2004 à 15:25:03    

Salut j'ai lu les trois ou quatre posts qui portent sur axis mais ca n'a pas résolu mon problème. J'ai créé un service qui me renvoie un bean (implements java.io.serializable, attributs private avec getter et setter et constructeur vide ..) mais je n'arrive jamais à le récupérer coté client. j'ai des exception à cause du serializer que axis n'arrive pas à trouver (je croyais qu'il supportais les beans en natif ??). voici mon wsdl :
 
[#0000ff] <?xml version="1.0" encoding="UTF-8" ?>  
- <wsdl:definitions targetNamespace="http://www.bookayacht.com/webservices/TestService.jws" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://www.bookayacht.com/webservices/TestService.jws" xmlns:intf="http://www.bookayacht.com/webservices/TestService.jws" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns1="http://Boat.ServiceObjects" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
- <wsdl:types>
- <schema targetNamespace="http://Boat.ServiceObjects" xmlns="http://www.w3.org/2001/XMLSchema">
  <import namespace="http://schemas.xmlsoap.org/soap/encoding/" />  
- <complexType name="Boat">
- <sequence>
  <element name="boatId" type="xsd:long" />  
  <element name="boatName" nillable="true" type="xsd:string" />  
  </sequence>
  </complexType>
  </schema>
  </wsdl:types>
  <wsdl:message name="LaunchSearchRequest" />  
- <wsdl:message name="LaunchSearchResponse">
  <wsdl:part name="LaunchSearchReturn" type="tns1:Boat" />  
  </wsdl:message>
- <wsdl:portType name="TestService">
- <wsdl:operation name="LaunchSearch">
  <wsdl:input message="impl:LaunchSearchRequest" name="LaunchSearchRequest" />  
  <wsdl:output message="impl:LaunchSearchResponse" name="LaunchSearchResponse" />  
  </wsdl:operation>
  </wsdl:portType>
- <wsdl:binding name="TestServiceSoapBinding" type="impl:TestService">
  <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />  
- <wsdl:operation name="LaunchSearch">
  <wsdlsoap:operation soapAction="" />  
- <wsdl:input name="LaunchSearchRequest">
  <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://DefaultNamespace" use="encoded" />  
  </wsdl:input>
- <wsdl:output name="LaunchSearchResponse">
  <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.bookayacht.com/webservices/TestService.jws" use="encoded" />  
  </wsdl:output>
  </wsdl:operation>
  </wsdl:binding>
- <wsdl:service name="TestServiceService">
- <wsdl:port binding="impl:TestServiceSoapBinding" name="TestService">
  <wsdlsoap:address location="http://www.bookayacht.com/webservices/TestService.jws" />  
  </wsdl:port>
  </wsdl:service>
  </wsdl:definitions>
 
[#000000] je deploie mes services sans wsdd (je renomme directement mes java en jws) donc je n'ai pas pu définir de bean dans le wsdl (mais il est défini en complexType) ... j'espère que vous pourrez m'aider.
 
Merci

Reply

Marsh Posté le 23-07-2004 à 15:25:03   

Reply

Marsh Posté le 25-07-2004 à 20:29:51    

et l'exception elle dit quoi ?

Reply

Marsh Posté le 26-07-2004 à 09:50:17    

voila l'exception :
 
Exception in thread "main" AxisFault
 faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
 faultSubcode:
 faultString: org.xml.sax.SAXException: Deserializing parameter &apos;LaunchSearchReturn&apos;:  could not find deserial
izer for type {http://Boat.ServiceObjects}Boat
 faultActor:
 faultNode:
 faultDetail:
        {http://xml.apache.org/axis/}stackTrace: org.xml.sax.SAXException: Deserializing parameter 'LaunchSearchReturn':
  could not find deserializer for type {http://Boat.ServiceObjects}Boat
        at org.apache.axis.message.RPCHandler.onStartChild(RPCHandler.java:302)
        at org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:963)
        at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:198)
        at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:722)
        at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:323)
        at org.apache.axis.message.RPCElement.getParams(RPCElement.java:347)
        at org.apache.axis.client.Call.invoke(Call.java:2272)
        at org.apache.axis.client.Call.invoke(Call.java:2171)
        at org.apache.axis.client.Call.invoke(Call.java:1691)
        at ClientTest.main(ClientTest.java:38)

Reply

Marsh Posté le 26-07-2004 à 15:59:03    

je passe mon tour [:joce]


Message édité par the real moins moins le 26-07-2004 à 15:59:09
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed