[ https://issues.apache.org/jira/browse/CXF-1598?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12600946#action_12600946 ]
Daniel Kulp commented on CXF-1598: ---------------------------------- I'll need a full example then as I've fixed all the cases I've been able to reproduce. > Soap message generated via JaxWsProxyFactoryBean created client fails > --------------------------------------------------------------------- > > Key: CXF-1598 > URL: https://issues.apache.org/jira/browse/CXF-1598 > Project: CXF > Issue Type: Bug > Affects Versions: 2.1 > Environment: Windows XP, Ubuntu 7.04, jdk 1.5.0_09, CXF 2.1 > Reporter: Alton Idowu > Assignee: Daniel Kulp > > The soap messages generated through DynamicClientFactory and > JaxWsProxyFactoryBean are different. The message generated via the > DynamicClientFactory created client generates a soap message with qualified > parameters that is accepted by web service provider. However, the message > JaxWsProxyFactoryBean created client generates a soap message with > unqualified parameters that is rejected by the web service provider. Is > there a parameter or custom interceptor code that I can use to force the > JaxWsProxyFactoryBean created client to qualify the parameters? > Unfortunately, changing the web service provider is not an option as their > change management process is very arduous. > Soap message generated via the DynamicClientFactory client: > <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> > <soap:Body> > <ns1:executeQuery xmlns:ns1="urn:test.ilss.sup"> > <in0 xmlns="urn:test.ilss.sup"> > TEST DATA > </in0> > </ns1:executeQuery> > </soap:Body> > </soap:Envelope> > Soap message generated via the JaxWsProxyFactoryBean client: > <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> > <soap:Body> > <ns2:executeQuery xmlns:ns2="urn:test.ilss.sup"> > <in0> > TEST DATA > </in0> > </ns2:executeQuery> > </soap:Body> > </soap:Envelope> > The web service provider sends the following message for the > JaxWsProxyFactoryBean client: > <?xml version='1.0' encoding='UTF-8'?> > <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> > <soap:Body> > <soap:Fault> > <faultcode>Server</faultcode> > <faultstring>Parameter in0 does not exist!</faultstring> > </soap:Fault> > </soap:Body> > </soap:Envelope> > WSDL: > <?xml version="1.0" encoding="UTF-8"?> > <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" > xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" > xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" > xmlns:tns="urn:test.ilss.sup" > xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" > xmlns:xsd="http://www.w3.org/2001/XMLSchema" > targetNamespace="urn:test.ilss.sup"> > <wsdl:types> > <xsd:schema targetNamespace="urn:test.ilss.sup" > elementFormDefault="qualified" attributeFormDefault="qualified"> > <xsd:element name="executeQuery"> > <xsd:complexType> > <xsd:sequence> > <xsd:element name="in0" type="xsd:string" minOccurs="1" > maxOccurs="1" /> > </xsd:sequence> > </xsd:complexType> > </xsd:element> > <xsd:element name="executeQueryResponse"> > <xsd:complexType> > <xsd:sequence> > <xsd:element name="out" type="xsd:string" minOccurs="1" > maxOccurs="1" /> > </xsd:sequence> > </xsd:complexType> > </xsd:element> > </xsd:schema> > </wsdl:types> > <wsdl:message name="executeQueryResponse"> > <wsdl:part element="tns:executeQueryResponse" name="parameters" /> > </wsdl:message> > <wsdl:message name="executeQueryRequest"> > <wsdl:part element="tns:executeQuery" name="parameters" /> > </wsdl:message> > <wsdl:portType name="servicePortType"> > <wsdl:operation name="executeQuery"> > <wsdl:input message="tns:executeQueryRequest" > name="executeQueryRequest" /> > <wsdl:output message="tns:executeQueryResponse" > name="executeQueryResponse" /> > </wsdl:operation> > </wsdl:portType> > <wsdl:binding name="serviceHttpBinding" type="tns:servicePortType"> > <wsdlsoap:binding style="document" > transport="http://schemas.xmlsoap.org/soap/http" /> > <wsdl:operation name="executeQuery"> > <wsdlsoap:operation soapAction="" /> > <wsdl:input name="executeQueryRequest"> > <wsdlsoap:body use="literal" /> > </wsdl:input> > <wsdl:output name="executeQueryResponse"> > <wsdlsoap:body use="literal" /> > </wsdl:output> > </wsdl:operation> > </wsdl:binding> > <wsdl:service name="service"> > <wsdl:port binding="tns:serviceHttpBinding" name="serviceHttpPort"> > <wsdlsoap:address location="http://****/vip/queryservice.ws" /> > </wsdl:port> > </wsdl:service> > </wsdl:definitions> -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.