I need the response soap envelop.
you can use [1] to capture the request and the response.
basically check whether your reponse is match to your schema.


[1] http://ws.apache.org/commons/tcpmon/

Amila.

On 10/10/07, George H <[EMAIL PROTECTED]> wrote:
>
> Thank you for your response.
>
> Below is my WSDL file (I cut out the parts not dealing with my 2
> problematic methods.
> Below that is the SOAP response. I think that is what you wanted? I
> set the log4j properties to DEBUG on the client side and dumped the
> output.
>
> Thank you.
>
> WSDL
> -----
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
> xmlns:axis2="http://ws.core.serv";
> xmlns:ns1="http://org.apache.axis2/xsd";
> xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl";
> xmlns:http="http://schemas.xmlsoap.org/wsdl/http/";
> xmlns:ns0="http://ws.core.serv/xsd";
> xmlns:xs="http://www.w3.org/2001/XMLSchema";
> xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/";
> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
> xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/";
> targetNamespace="http://ws.core.serv";>
>     <wsdl:types>
>         <xs:schema xmlns:xsd="http://ws.core.tipsws/xsd";
> attributeFormDefault="qualified" elementFormDefault="qualified"
> targetNamespace="http://ws.core.serv/xsd";>
>             <xs:element name="getCustomClasses">
>                 <xs:complexType>
>                     <xs:sequence>
>                         <xs:element minOccurs="0"
> name="GenericStructMessage" nillable="true" type="xs:base64Binary"/>
>                     </xs:sequence>
>                 </xs:complexType>
>             </xs:element>
>             <xs:element name="getCustomClassesResponse">
>                 <xs:complexType>
>                     <xs:sequence>
>                         <xs:element minOccurs="0" name="return"
> nillable="true" type="xs:base64Binary"/>
>                     </xs:sequence>
>                 </xs:complexType>
>             </xs:element>
>             <xs:element name="getOtherCustomClasses">
>                 <xs:complexType>
>                     <xs:sequence>
>                         <xs:element minOccurs="0" name="GenericStruct"
> nillable="true" type="xs:base64Binary"/>
>                     </xs:sequence>
>                 </xs:complexType>
>             </xs:element>
>             <xs:element name="getOtherCustomClassesResponse">
>                 <xs:complexType>
>                     <xs:sequence>
>                         <xs:element minOccurs="0" name="return"
> nillable="true" type="xs:base64Binary"/>
>                     </xs:sequence>
>                 </xs:complexType>
>             </xs:element>
>         </xs:schema>
>     </wsdl:types>
>     <wsdl:message name="getOtherCustomClassesRequest">
>         <wsdl:part name="parameters" element="ns0:getOtherCustomClasses"/>
>     </wsdl:message>
>     <wsdl:message name="getOtherCustomClassesResponse">
>         <wsdl:part name="parameters"
> element="ns0:getOtherCustomClassesResponse"/>
>     </wsdl:message>
>     <wsdl:message name="getCustomClassesRequest">
>         <wsdl:part name="parameters" element="ns0:getCustomClasses"/>
>     </wsdl:message>
>     <wsdl:message name="getCustomClassesResponse">
>         <wsdl:part name="parameters"
> element="ns0:getCustomClassesResponse"/>
>     </wsdl:message>
>     <wsdl:portType name="CoreServicePortType">
>         <wsdl:operation name="getOtherCustomClasses">
>             <wsdl:input message="axis2:getOtherCustomClassesRequest"
> wsaw:Action="urn:getOtherCustomClasses"/>
>             <wsdl:output message="axis2:getOtherCustomClassesResponse"
> wsaw:Action="urn:getOtherCustomClassesResponse"/>
>         </wsdl:operation>
>         <wsdl:operation name="getCustomClasses">
>             <wsdl:input message="axis2:getCustomClassesRequest"
> wsaw:Action="urn:getCustomClasses"/>
>             <wsdl:output message="axis2:getCustomClassesResponse"
> wsaw:Action="urn:getCustomClassesResponse"/>
>         </wsdl:operation>
>     </wsdl:portType>
>     <wsdl:binding name="CoreServiceSOAP11Binding"
> type="axis2:CoreServicePortType">
>         <soap:binding transport="http://schemas.xmlsoap.org/soap/http";
> style="document"/>
>         <wsdl:operation name="getOtherCustomClasses">
>             <soap:operation soapAction="urn:getOtherCustomClasses"
> style="document"/>
>             <wsdl:input>
>                 <soap:body use="literal"/>
>             </wsdl:input>
>             <wsdl:output>
>                 <soap:body use="literal"/>
>             </wsdl:output>
>         </wsdl:operation>
>         <wsdl:operation name="getCustomClasses">
>             <soap:operation soapAction="urn:getCustomClasses"
> style="document"/>
>             <wsdl:input>
>                 <soap:body use="literal"/>
>             </wsdl:input>
>             <wsdl:output>
>                 <soap:body use="literal"/>
>             </wsdl:output>
>         </wsdl:operation>
>     </wsdl:binding>
>     <wsdl:binding name="CoreServiceSOAP12Binding"
> type="axis2:CoreServicePortType">
>         <soap12:binding
> transport="http://schemas.xmlsoap.org/soap/http"; style="document"/>
>         <wsdl:operation name="getOtherCustomClasses">
>             <soap12:operation soapAction="urn:getOtherCustomClasses"
> style="document"/>
>             <wsdl:input>
>                 <soap12:body use="literal"/>
>             </wsdl:input>
>             <wsdl:output>
>                 <soap12:body use="literal"/>
>             </wsdl:output>
>         </wsdl:operation>
>         <wsdl:operation name="getCustomClasses">
>             <soap12:operation soapAction="urn:getCustomClasses"
> style="document"/>
>             <wsdl:input>
>                 <soap12:body use="literal"/>
>             </wsdl:input>
>             <wsdl:output>
>                 <soap12:body use="literal"/>
>             </wsdl:output>
>         </wsdl:operation>
>     </wsdl:binding>
>     <wsdl:binding name="CoreServiceHttpBinding"
> type="axis2:CoreServicePortType">
>         <http:binding verb="POST"/>
>         <wsdl:operation name="getOtherCustomClasses">
>             <http:operation location="CoreService/getOtherCustomClasses"/>
>             <wsdl:input>
>                 <mime:content type="text/xml"
> part="getOtherCustomClasses"/>
>             </wsdl:input>
>             <wsdl:output>
>                 <mime:content type="text/xml"
> part="getOtherCustomClasses"/>
>             </wsdl:output>
>         </wsdl:operation>
>         <wsdl:operation name="getCustomClasses">
>             <http:operation location="CoreService/getCustomClasses"/>
>             <wsdl:input>
>                 <mime:content type="text/xml" part="getCustomClasses"/>
>             </wsdl:input>
>             <wsdl:output>
>                 <mime:content type="text/xml" part="getCustomClasses"/>
>             </wsdl:output>
>         </wsdl:operation>
>     </wsdl:binding>
>     <wsdl:service name="CoreService">
>         <wsdl:port name="CoreServiceSOAP11port_http"
> binding="axis2:CoreServiceSOAP11Binding">
>             <soap:address
> location="http://localhost:8080/axis2/services/CoreService"/>
>         </wsdl:port>
>         <wsdl:port name="CoreServiceSOAP12port_http"
> binding="axis2:CoreServiceSOAP12Binding">
>             <soap12:address
> location="http://localhost:8080/axis2/services/CoreService"/>
>         </wsdl:port>
>         <wsdl:port name="CoreServiceHttpport"
> binding="axis2:CoreServiceHttpBinding">
>             <http:address
> location="http://localhost:8080/axis2/services/CoreService"/>
>         </wsdl:port>
>     </wsdl:service>
> </wsdl:definitions>
>
>
> RESPONSE
> ----
> INFO   (ModuleDeployer.java:72) - Deploying module: addressing-1.3
> DEBUG  (DefaultHttpParams.java:150) - Set parameter http.useragent =
> Jakarta Commons-HttpClient/3.0.1
> DEBUG  (DefaultHttpParams.java:150) - Set parameter
> http.protocol.version = HTTP/1.1
> DEBUG  (DefaultHttpParams.java:150) - Set parameter
> http.connection-manager.class = class
> org.apache.commons.httpclient.SimpleHttpConnectionManager
> DEBUG  (DefaultHttpParams.java:150) - Set parameter
> http.protocol.cookie-policy = rfc2109
> DEBUG  (DefaultHttpParams.java:150) - Set parameter
> http.protocol.element-charset = US-ASCII
> DEBUG  (DefaultHttpParams.java:150) - Set parameter
> http.protocol.content-charset = ISO-8859-1
> DEBUG  (DefaultHttpParams.java:150) - Set parameter
> http.method.retry-handler =
> [EMAIL PROTECTED]
> DEBUG  (DefaultHttpParams.java:150) - Set parameter
> http.dateparser.patterns = [EEE, dd MMM yyyy HH:mm:ss zzz, EEEE,
> dd-MMM-yy HH:mm:ss zzz, EEE MMM d HH:mm:ss yyyy, EEE, dd-MMM-yyyy
> HH:mm:ss z, EEE, dd-MMM-yyyy HH-mm-ss z, EEE, dd MMM yy HH:mm:ss z,
> EEE dd-MMM-yyyy HH:mm:ss z, EEE dd MMM yyyy HH:mm:ss z, EEE
> dd-MMM-yyyy HH-mm-ss z, EEE dd-MMM-yy HH:mm:ss z, EEE dd MMM yy
> HH:mm:ss z, EEE,dd-MMM-yy HH:mm:ss z, EEE,dd-MMM-yyyy HH:mm:ss z, EEE,
> dd-MM-yyyy HH:mm:ss z]
> DEBUG  (HttpClient.java:71) - Java version: 1.6.0_02
> DEBUG  (HttpClient.java:72) - Java vendor: Sun Microsystems Inc.
> DEBUG  (HttpClient.java:73) - Java class path: C:\Documents and
> Settings\george\workspace-EE\serv\build\classes;C:\Sun\SDK\lib\appserv-
> rt.jar
> ;C:\Sun\SDK\lib\javaee.jar;C:\Sun\SDK\lib\mail.jar;C:\Sun\SDK\lib\appserv-
> ws.jar;C:\Sun\SDK\lib\appserv-jstl.jar;C:\Sun\SDK\lib\appserv-tags.jar
> ;C:\Sun\SDK\lib\activation.jar;Y:\axis2\codegen\annogen-0.1.0.jar
> ;Y:\axis2\codegen\ant-1.7.0.jar;Y:\axis2\codegen\axiom-api-1.2.5.jar
> ;Y:\axis2\codegen\axiom-dom-1.2.5.jar;Y:\axis2\codegen\axiom-
> impl-1.2.5.jar;Y:\axis2\codegen\axis2-1.3.jar;Y:\axis2\codegen\commons-
> codec-1.3.jar;Y:\axis2\codegen\commons-httpclient-3.0.1.jar
> ;Y:\axis2\codegen\commons-logging-1.1.jar
> ;Y:\axis2\codegen\geronimo-activation_1.1_spec-1.0-M1.jar
> ;Y:\axis2\codegen\jibx-bind-1.1.5.jar;Y:\axis2\codegen\log4j-1.2.14.jar
> ;Y:\axis2\codegen\neethi-2.0.2.jar;Y:\axis2\codegen\stax-api-1.0.1.jar
> ;Y:\axis2\codegen\woden-1.0-incubating-M7b.jar;Y:\axis2\codegen\wsdl4j-
> 1.6.2.jar;Y:\axis2\codegen\wstx-asl-3.2.1.jar;Y:\axis2\codegen\xbean-
> 2.2.0.jar;Y:\axis2\codegen\XmlSchema-1.3.2.jar;Y:\serv\serv-common
> .jar
> DEBUG  (HttpClient.java:74) - Operating system name: Windows XP
> DEBUG  (HttpClient.java:75) - Operating system architecture: x86
> DEBUG  (HttpClient.java:76) - Operating system version: 5.1
> DEBUG  (HttpClient.java:81) - SUN 1.6: SUN (DSA key/parameter
> generation; DSA signing; SHA-1, MD5 digests; SecureRandom; X.509
> certificates; JKS keystore; PKIX CertPathValidator; PKIX
> CertPathBuilder; LDAP, Collection CertStores, JavaPolicy Policy;
> JavaLoginConfig Configuration)
> DEBUG  (HttpClient.java:81) - SunRsaSign 1.5: Sun RSA signature provider
> DEBUG  (HttpClient.java:81) - SunJSSE 1.6: Sun JSSE provider(PKCS12,
> SunX509 key/trust factories, SSLv3, TLSv1)
> DEBUG  (HttpClient.java:81) - SunJCE 1.6: SunJCE Provider (implements
> RSA, DES, Triple DES, AES, Blowfish, ARCFOUR, RC2, PBE,
> Diffie-Hellman, HMAC)
> DEBUG  (HttpClient.java:81) - SunJGSS 1.0: Sun (Kerberos v5, SPNEGO)
> DEBUG  (HttpClient.java:81) - SunSASL 1.5: Sun SASL
> provider(implements client mechanisms for: DIGEST-MD5, GSSAPI,
> EXTERNAL, PLAIN, CRAM-MD5; server mechanisms for: DIGEST-MD5, GSSAPI,
> CRAM-MD5)
> DEBUG  (HttpClient.java:81) - XMLDSig 1.0: XMLDSig (DOM
> XMLSignatureFactory; DOM KeyInfoFactory)
> DEBUG  (HttpClient.java:81) - SunPCSC 1.6: Sun PC/SC provider
> DEBUG  (HttpClient.java:81) - SunMSCAPI 1.6: Sun's Microsoft Crypto API
> provider
> DEBUG  (DefaultHttpParams.java:150) - Set parameter
> http.connection.timeout = 30000
> DEBUG  (DefaultHttpParams.java:150) - Set parameter http.socket.timeout =
> 30000
> DEBUG  (DefaultHttpParams.java:150) - Set parameter http.socket.timeout =
> 30000
> DEBUG  (MultiThreadedHttpConnectionManager.java:390) -
> HttpConnectionManager.getConnection:  config =
> HostConfiguration[host=http://appserv.company.com:8080], timeout = 0
> DEBUG  (MultiThreadedHttpConnectionManager.java:739) - Allocating new
> connection, hostConfig=HostConfiguration[host=
> http://appserv.company.com:8080]
> DEBUG  (HttpConnection.java:691) - Open connection to
> appserv.company.com:8080
> DEBUG  (Wire.java:69) - >> "POST /axis2/services/CoreService
> HTTP/1.1[\r][\n]"
> DEBUG  (HttpMethodBase.java:1235) - Adding Host request header
> DEBUG  (Wire.java:69) - >> "Content-Type: application/soap+xml;
> charset=UTF-8; action="urn:getCustomClasses"[\r][\n]"
> DEBUG  (Wire.java:69) - >> "User-Agent: Axis2[\r][\n]"
> DEBUG  (Wire.java:69) - >> "Host: appserv.company.com:8080[\r][\n]"
> DEBUG  (Wire.java:69) - >> "Transfer-Encoding: chunked[\r][\n]"
> DEBUG  (Wire.java:69) - >> "[\r][\n]"
> DEBUG  (EntityEnclosingMethod.java:504) - Request body sent
> DEBUG  (Wire.java:69) - << "HTTP/1.1 200 OK[\r][\n]"
> DEBUG  (Wire.java:69) - << "X-Powered-By: Servlet/2.5[\r][\n]"
> DEBUG  (Wire.java:69) - << "Content-Type: application/soap+xml;
> action="urn:getCustomClassesResponse";charset=UTF-8[\r][\n]"
> DEBUG  (Wire.java:69) - << "Transfer-Encoding: chunked[\r][\n]"
> DEBUG  (Wire.java:69) - << "Date: Wed, 10 Oct 2007 08:28:22 GMT[\r][\n]"
> DEBUG  (Wire.java:69) - << "Server: Sun Java System Application Server
> Platform Edition 9.0_01[\r][\n]"
> org.apache.axis2.AxisFault: org.apache.axis2.databinding.ADBException:
> Unexpected subelement return
>         at org.apache.axis2.AxisFault.makeFault(AxisFault.java:417)
>         at serv.core.ws.CoreServiceStub.fromOM(CoreServiceStub.java:10032)
>         at serv.core.ws.CoreServiceStub.getCustomClasses(
> CoreServiceStub.java:675)
>         at serv.core.client.CoreServiceClient.getCustomClasses(
> CoreServiceClient.java:403)
>         at serv.core.client.CoreServiceClient.main(CoreServiceClient.java
> :585)
> Caused by: java.lang.Exception:
> org.apache.axis2.databinding.ADBException: Unexpected subelement
> return
>         at
> serv.core.ws.CoreServiceStub$GetCustomClassesResponse$Factory.parse(
> CoreServiceStub.java:7156)
>         at serv.core.ws.CoreServiceStub.fromOM(CoreServiceStub.java:9930)
>         ... 3 more
> Caused by: org.apache.axis2.databinding.ADBException: Unexpected
> subelement return
>         at
> serv.core.ws.CoreServiceStub$GetCustomClassesResponse$Factory.parse(
> CoreServiceStub.java:7152)
>         ... 4 more
>
> On 10/10/07, Amila Suriarachchi <[EMAIL PROTECTED]> wrote:
> > Can you send your wsdl and response?
> >
> >
> > On 10/9/07, George H <[EMAIL PROTECTED]> wrote:
> > >
> > > I have created a webservice and client using the Axis2 eclipse
> > > plugin tools v1.3.0. Using Eclipse (J2EE) Version: 3.3.0 Build id:
> > > I20070621-1340.
> > > Axis2 v1.3
> > >
> > > I have a webservice with many methods. Some reaturn boolean some
> > > return an custom
> > > class serialized as an array of bytes. They all work, except for all
> the
> > methods
> > > that have only 1 thing in common. They both return a Vector of that
> > > custom class.
> > > That vector is serialized into bytes and sent back like all the
> others,
> > but it
> > > always fails with "Unexpected subelement return" error.
> > >
> > > The wsdl file is generated by the tools and so are the stub classes.
> > > Thanks in advance to anyone who can help me figure out the problem.
> > >
> > > The code calling the service
> > > ---
> > > Vector<CustomClass> customClasses = null;
> > >
> > > try {
> > >         byte[] barray = serializeToBytes(myMessage);
> > >         ByteArrayDataSource byteDataSource = new
> > ByteArrayDataSource(barray);
> > >         DataHandler dh = new DataHandler(byteDataSource);
> > >
> > >         CoreServiceStub.GetCustomClasses
> > getCustomClassesParam = new
> > > CoreServiceStub.GetCustomClasses();
> > >         getCustomClassesParam.setCustomClass (dh);
> > >
> > >         CoreServiceStub stub = new
> > CoreServiceStub(TARGET_ENDPOINT);
> > >         CoreServiceStub.GetCustomClassesResponse response
> > =
> > > stub.getCustomClasses(getCustomClassesParam);
> > >
> > >         DataHandler dh2 = response.get_return();
> > >         Object obj = deserializeFromBytes(dh2);
> > >         if(obj instanceof Vector) {
> > >                 customClasses = (Vector<CustomClass>)obj;
> > >         }
> > > }
> > > catch(Exception ex) {
> > >         ex.printStackTrace();
> > > }
> > >
> > >
> > >
> > > The stack trace, identical each time it is run.
> > > ---
> > > org.apache.axis2.AxisFault:
> > org.apache.axis2.databinding.ADBException:
> > > Unexpected subelement return
> > >         at
> > org.apache.axis2.AxisFault.makeFault(AxisFault.java:417)
> > >         at
> > serv.core.ws.CoreServiceStub.fromOM(CoreServiceStub.java:10032)
> > >         at
> > serv.core.ws.CoreServiceStub.getCustomClasses(CoreServiceStub.java:675)
> > >         at
> >
> serv.core.client.CoreServiceClient.getCustomClasses.CoreServiceClient.java
> :403)
> > >         at
> > serv.core.client.CoreServiceClient.main(CoreServiceClient.java:583)
> > > Caused by: java.lang.Exception:
> > > org.apache.axis2.databinding.ADBException : Unexpected
> > subelement
> > > return
> > >         at
> > serv.core.ws.CoreServiceStub$GetCustomClassesResponse$Factory.parse(
> CoreServiceStub.java:7156)
> > >         at
> > serv.core.ws.CoreServiceStub.fromOM(CoreServiceStub.java:9930)
> > >         ... 3 more
> > > Caused by: org.apache.axis2.databinding.ADBException:
> > Unexpected
> > > subelement return
> > >         at
> > serv.core.ws.CoreServiceStub$GetCustomClassesResponse$Factory.parse(
> CoreServiceStub.java:7152)
> > >         ... 4 more
> > > --
> > > George H
> > > [EMAIL PROTECTED]
> > >
> > >
> > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail:
> > [EMAIL PROTECTED]
> > > For additional commands, e-mail: [EMAIL PROTECTED]
> > >
> > >
> >
> >
> >
> > --
> > Amila Suriarachchi,
> > WSO2 Inc.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


-- 
Amila Suriarachchi,
WSO2 Inc.

Reply via email to