Hi Dushshantha,
Please find the attached wsdl.
When debugged AxisXmlParserXerces code with a
xerces-c_2_6D.dll, it stopped throwing exception like xerces-c_2_2_0.dll
(the dll which I was using earlier). However, getElementAsString() is now
returning 0 value after deserializing <result
xsi:type="xsd:string">TEST</result>.
Some pointers -
In getElementAsString()
function, getXSDType() (SoapDeSerializer.cpp: line #
3110) returns XSD_UNKNOWN. This ultimately results in returning 0 from
getElementString (instead of "TEST").
At
line # 3106 in SoapDeSerializer.cpp (m_pNode = m_pParser->next ()) the
m_type of node pointer shows END_ELEMENT instead of expected START_ELEMENT. This
results in returning type as XSD_UNKNOWN.
Also,
for some reason pElement->m_pchAttributes array also shows up empty in
getXSDType() function.
This
seems to be a bug. If so, is there
any work already done on it?
Thanks
& regards,
Linesh
From: Dushshantha Chandradasa [mailto:[EMAIL PROTECTED] Sent: Friday, August 05, 2005 1:08 PM To: Apache AXIS C User List Subject: RE: Problem deserializing SOAP response in Axis C++ client Hi
Linesh, It would be better if
you can attach the wsdl file you are using for that then I can generate the
client and test with MockServer. And you can use
MockServer for Client side testing. Please refer to
..\ws-axis\c\tests\auto_build\UnitTest_Readme.txt for more
information. Thanks, Dushshantha From:
[EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Hi, I am trying to communicate with a
J2EE webservice running on Bea Weblogic webserver 8.1 SP3. The client side
has Axis C++. I am getting error while reading the SOAP response sent by the
webservice. The exception occurs on calling getElementAsString
function (after checkMessage return
successful, line 3105: at m_pNode =
m_pParser->next ()).
The code is exactly similar to the
one provided with C++ samples.
The response received is as below
(Trapped using Mindreef SOAPScope). Request sent (It sends an XML string
in parameter "xmlRequest") -
Rsposne received (Output parameter
name is "result")- <env:Envelope Thanks in
advance, Linesh Mahadik
|
<?xml version="1.0" encoding="UTF-8"?> <definitions xmlns:tns="http://www.cardinal.com/distribution/webservices" xmlns:wsr="http://www.openuri.org/2002/10/soap/reliability/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap12enc="http://www.w3.org/2003/05/soap-encoding" xmlns:conv="http://www.openuri.org/2002/04/wsdl/conversation/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://www.cardinal.com/distribution/webservices"> <types xmlns:tns="http://www.cardinal.com/distribution/webservices" xmlns:wsr="http://www.openuri.org/2002/10/soap/reliability/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap12enc="http://www.w3.org/2003/05/soap-encoding" xmlns:conv="http://www.openuri.org/2002/04/wsdl/conversation/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmlsoap.org/wsdl/"> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:stns="java:com.cardinal.pdit.ebsl.web.internal" elementFormDefault="qualified" attributeFormDefault="qualified" targetNamespace="java:com.cardinal.pdit.ebsl.web.internal"> <xsd:element type="stns:WebServiceException" name="WebServiceException"> </xsd:element> <xsd:complexType name="WebServiceException"> </xsd:complexType> </xsd:schema> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:stns="http://www.cardinal.com/distribution/webservices" elementFormDefault="qualified" attributeFormDefault="qualified" targetNamespace="http://www.cardinal.com/distribution/webservices"> <xsd:element type="xsd:string" name="lookupProduct" nillable="true"> </xsd:element> <xsd:element type="xsd:string" name="lookupProductResponse" nillable="true"> </xsd:element> </xsd:schema> </types> <message name="lookupProduct"> <part xmlns:partns="http://www.cardinal.com/distribution/webservices" name="xmlRequest" element="partns:lookupProduct"> </part> </message> <message name="lookupProductResponse"> <part xmlns:partns="http://www.cardinal.com/distribution/webservices" name="result" element="partns:lookupProductResponse"> </part> </message> <message name="WebServiceException"> <part xmlns:partns="java:com.cardinal.pdit.ebsl.web.internal" name="WebServiceException" element="partns:WebServiceException"> </part> </message> <portType name="ProductLookupServiceBrokerPort"> <operation name="lookupProduct"> <input message="tns:lookupProduct"> </input> <output message="tns:lookupProductResponse"> </output> <fault name="WebServiceException" message="tns:WebServiceException"> </fault> </operation> </portType> <binding type="tns:ProductLookupServiceBrokerPort" name="ProductLookupServiceBrokerPort"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"> </soap:binding> <operation name="lookupProduct"> <soap:operation style="document" soapAction=""> </soap:operation> <input> <soap:body namespace="http://www.cardinal.com/distribution/webservices" use="literal"> </soap:body> </input> <output> <soap:body namespace="http://www.cardinal.com/distribution/webservices" use="literal"> </soap:body> </output> <fault name="WebServiceException"> <soap:fault namespace="http://www.cardinal.com/distribution/webservices" name="WebServiceException" use="literal"> </soap:fault> </fault> </operation> </binding> <service name="ProductLookupServiceBroker"> <port name="ProductLookupServiceBrokerPort" binding="tns:ProductLookupServiceBrokerPort"> <soap:address location="http://ebslqctest.cardinal.net:8170/pdit-ebsl-servlet/ProductLookupService"> </soap:address> </port> </service> </definitions>