This did the trick, changing the default qualifiers, in the package-info.java file, from unqualified to quailified did the trick. The client is now sending and receiving messages from the web service. The reply is being properly parsed as well.
Thank you, everyone, for your assistance; it is greately appreciated. Stu dkulp wrote: > > > This is actually the opposite of what Benson said. The WSDL CXF is > generating > is unqualified, but gSOAP seems to be sending out all the data as > qualified. > If you can modify the service, adding a package-info.java that specifies > the > schema as qualified should make the generated wsdl qualified and thus > accept > the gsoap message. > > Dan > > > On Tue September 15 2009 12:08:16 pm sbrock wrote: >> The following WSDL was generated by the Apache-CXF framework for a web >> service: >> >> <?xml version="1.0" encoding="UTF-8" ?> >> <wsdl:definitions name="QuoteService" >> targetNamespace="http://api.webservice.quotews.broadridge.com/" >> xmlns:ns1="http://schemas.xmlsoap.org/wsdl/soap/http" >> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" >> xmlns:tns="http://api.webservice.quotews.broadridge.com/" >> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" >> xmlns:xsd="http://www.w3.org/2001/XMLSchema"> >> <wsdl:types> >> <xs:schema attributeFormDefault="unqualified" >> elementFormDefault="unqualified" >> targetNamespace="http://api.webservice.quotews.broadridge.com/" >> xmlns:tns="http://api.webservice.quotews.broadridge.com/" >> xmlns:xs="http://www.w3.org/2001/XMLSchema"> >> <xs:complexType name="baseWebServiceData"> >> <xs:sequence> >> <xs:element minOccurs="0" name="extra" type="tns:MarshalledMap" /> >> </xs:sequence> >> </xs:complexType> >> <xs:complexType name="MarshalledMap"> >> <xs:sequence> >> <xs:element maxOccurs="unbounded" minOccurs="0" name="entry" >> type="tns:IdentifiedObject" /> >> </xs:sequence> >> </xs:complexType> >> <xs:complexType name="IdentifiedObject"> >> <xs:sequence> >> <xs:element name="id" type="xs:anyType" /> >> <xs:element minOccurs="0" name="value" type="xs:anyType" /> >> </xs:sequence> >> </xs:complexType> >> <xs:complexType name="QuoteServiceRequest"> >> <xs:complexContent> >> <xs:extension base="tns:baseWebServiceData"> >> <xs:sequence> >> <xs:element minOccurs="0" name="realtime" type="xs:boolean" /> >> <xs:element minOccurs="0" name="account" type="xs:string" /> >> <xs:element minOccurs="0" name="application" type="xs:string" /> >> <xs:element maxOccurs="unbounded" minOccurs="0" name="service" >> type="xs:string" /> >> <xs:element maxOccurs="unbounded" minOccurs="0" name="symbol" >> type="tns:SymbolInfo" /> >> </xs:sequence> >> </xs:extension> >> </xs:complexContent> >> </xs:complexType> >> <xs:complexType name="SymbolInfo"> >> <xs:complexContent> >> <xs:extension base="tns:baseWebServiceData"> >> <xs:sequence> >> <xs:element minOccurs="0" name="type" type="xs:string" /> >> <xs:element maxOccurs="unbounded" minOccurs="0" name="symbols" >> type="xs:string" /> >> </xs:sequence> >> </xs:extension> >> </xs:complexContent> >> </xs:complexType> >> <xs:complexType name="QuoteServiceReply"> >> <xs:complexContent> >> <xs:extension base="tns:baseWebServiceData"> >> <xs:sequence> >> <xs:element maxOccurs="unbounded" minOccurs="0" name="quote" >> type="tns:QuoteData" /> >> </xs:sequence> >> </xs:extension> >> </xs:complexContent> >> </xs:complexType> >> <xs:complexType name="QuoteData"> >> <xs:complexContent> >> <xs:extension base="tns:baseWebServiceData"> >> <xs:sequence> >> <xs:element minOccurs="0" name="symbol" type="xs:string" /> >> <xs:element minOccurs="0" name="price" type="xs:decimal" /> >> <xs:element minOccurs="0" name="change" type="xs:decimal" /> >> <xs:element minOccurs="0" name="datetime" type="xs:string" /> >> <xs:element minOccurs="0" name="size" type="xs:long" /> >> <xs:element minOccurs="0" name="sharevolume" type="xs:long" /> >> <xs:element minOccurs="0" name="exchange" type="xs:string" /> >> <xs:element minOccurs="0" name="askprice" type="xs:decimal" /> >> <xs:element minOccurs="0" name="asksize" type="xs:long" /> >> <xs:element minOccurs="0" name="bidsize" type="xs:long" /> >> <xs:element minOccurs="0" name="bidprice" type="xs:decimal" /> >> <xs:element minOccurs="0" name="high" type="xs:decimal" /> >> <xs:element minOccurs="0" name="low" type="xs:decimal" /> >> </xs:sequence> >> </xs:extension> >> </xs:complexContent> >> </xs:complexType> >> <xs:element name="getSymbolTypes" type="tns:getSymbolTypes" /> >> <xs:complexType name="getSymbolTypes"> >> <xs:sequence /> >> </xs:complexType> >> <xs:element name="getSymbolTypesResponse" >> type="tns:getSymbolTypesResponse" >> /> >> <xs:complexType name="getSymbolTypesResponse"> >> <xs:sequence> >> <xs:element maxOccurs="unbounded" minOccurs="0" name="return" >> type="xs:string" /> >> </xs:sequence> >> </xs:complexType> >> <xs:element name="getQuotes" type="tns:getQuotes" /> >> <xs:complexType name="getQuotes"> >> <xs:sequence> >> <xs:element minOccurs="0" name="arg0" type="tns:QuoteServiceRequest" /> >> </xs:sequence> >> </xs:complexType> >> <xs:element name="getQuotesResponse" type="tns:getQuotesResponse" /> >> <xs:complexType name="getQuotesResponse"> >> <xs:sequence> >> <xs:element minOccurs="0" name="return" type="tns:QuoteServiceReply" /> >> </xs:sequence> >> </xs:complexType> >> </xs:schema> >> </wsdl:types> >> <wsdl:message name="getSymbolTypes"> >> <wsdl:part element="tns:getSymbolTypes" name="parameters" /> >> </wsdl:message> >> <wsdl:message name="getSymbolTypesResponse"> >> <wsdl:part element="tns:getSymbolTypesResponse" name="parameters" /> >> </wsdl:message> >> <wsdl:message name="getQuotes"> >> <wsdl:part element="tns:getQuotes" name="parameters" /> >> </wsdl:message> >> <wsdl:message name="getQuotesResponse"> >> <wsdl:part element="tns:getQuotesResponse" name="parameters" /> >> </wsdl:message> >> <wsdl:portType name="QuoteService"> >> <wsdl:operation name="getSymbolTypes"> >> <wsdl:input message="tns:getSymbolTypes" name="getSymbolTypes" /> >> <wsdl:output message="tns:getSymbolTypesResponse" >> name="getSymbolTypesResponse" /> >> </wsdl:operation> >> <wsdl:operation name="getQuotes"> >> <wsdl:input message="tns:getQuotes" name="getQuotes" /> >> <wsdl:output message="tns:getQuotesResponse" name="getQuotesResponse" /> >> </wsdl:operation> >> </wsdl:portType> >> <wsdl:binding name="QuoteServiceSoapBinding" type="tns:QuoteService"> >> <soap:binding style="document" >> transport="http://schemas.xmlsoap.org/soap/http" /> >> <wsdl:operation name="getSymbolTypes"> >> <soap:operation soapAction="" style="document" /> >> <wsdl:input name="getSymbolTypes"> >> <soap:body use="literal" /> >> </wsdl:input> >> <wsdl:output name="getSymbolTypesResponse"> >> <soap:body use="literal" /> >> </wsdl:output> >> </wsdl:operation> >> <wsdl:operation name="getQuotes"> >> <soap:operation soapAction="" style="document" /> >> <wsdl:input name="getQuotes"> >> <soap:body use="literal" /> >> </wsdl:input> >> <wsdl:output name="getQuotesResponse"> >> <soap:body use="literal" /> >> </wsdl:output> >> </wsdl:operation> >> </wsdl:binding> >> <wsdl:service name="QuoteService"> >> <wsdl:port binding="tns:QuoteServiceSoapBinding" name="QuoteServicePort"> >> <soap:address >> location="http://206.88.41.168:8086/quoteService/services/quoteService" >> /> >> </wsdl:port> >> </wsdl:service> >> </wsdl:definitions> >> >> I am using gSOAP 2.6.0 to generate a client to call the getQuotes >> service. >> The >> issue I am having is that the request sent to the web service by the >> gSOAP >> client does not have the correct namespace qualifieres on the payload. As >> a >> result the Apache-CXF/XFire parser does not bind the payload to an object >> and >> the service receives an empty request. >> >> Here is the request that is sent by the gSOAP client: >> >> <?xml version="1.0" encoding="UTF-8" ?> >> <SOAP-ENV:Envelope >> xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" >> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" >> xmlns:ns1="http://api.webservice.quotews.broadridge.com/" >> xmlns:ns2="QuoteServiceSoapBinding" >> xmlns:xsd="http://www.w3.org/2001/XMLSchema" >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> >> <SOAP-ENV:Body id="_0"> >> <getQuotes xmlns="http://api.webservice.quotews.broadridge.com/" >> xsi:type="ns1:getQuotes"> >> <arg0 xsi:type="ns1:QuoteServiceRequest"> >> <realtime>true</realtime> >> <account xsi:type="xsd:string">111111101</account> >> <application xsi:type="xsd:string">StockMarketGame</application> >> <service xsi:type="xsd:string">eSignal</service> >> <symbol xsi:type="ns1:SymbolInfo"> >> <type xsi:type="xsd:string">stock</type> >> <symbols xsi:type="xsd:string">BR</symbols> >> </symbol> >> </arg0> >> </getQuotes> >> </SOAP-ENV:Body> >> </SOAP-ENV:Envelope> >> >> Is there a way to fix this problem by editing the WSDL? I have read >> postings on >> the web that mention editing the WSDL by hand, but I don't have a clue >> what >> to >> change to make things work. >> >> Any suggestions are greatly appreciated. >> >> Stu >> > > -- > Daniel Kulp > [email protected] > http://www.dankulp.com/blog > > -- View this message in context: http://www.nabble.com/gSOAP-client-failing-to-call-Apache-CXF-XFire-server...-tp25456882p25491926.html Sent from the cxf-user mailing list archive at Nabble.com.
