You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Daniel Kulp (JIRA)" <ji...@apache.org> on 2017/03/23 18:26:42 UTC
[jira] [Updated] (CXF-6518) Soap envelope namespaces not used
during exception detail unmarshalling
[ https://issues.apache.org/jira/browse/CXF-6518?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Kulp updated CXF-6518:
-----------------------------
Component/s: Soap Binding
> Soap envelope namespaces not used during exception detail unmarshalling
> -----------------------------------------------------------------------
>
> Key: CXF-6518
> URL: https://issues.apache.org/jira/browse/CXF-6518
> Project: CXF
> Issue Type: Bug
> Components: Soap Binding
> Reporter: Andrew Cleasby
>
> When handling this SOAP fault response:
> <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><soapenv:Fault><faultcode>ServerFaultCode</faultcode><faultstring/><detail><RuntimeFaultFault xsi:type="vim25:InvalidArgument" xmlns="urn:pbm" xmlns:pbm="urn:pbm" xmlns:vim25="urn:vim25"><vim25:faultMessage><vim25:key>com.vmware.pbm.pbmFault.locale</vim25:key><vim25:arg><vim25:key>summary</vim25:key><vim25:value xsi:type="xsd:string">Invalid or null error message(vmodl.fault.InvalidArgument) {
> faultCause = null,
> faultMessage = null,
> invalidProperty = resourceType
> }</vim25:value></vim25:arg></vim25:faultMessage><vim25:invalidProperty>resourceType</vim25:invalidProperty></RuntimeFaultFault></detail></soapenv:Fault></soapenv:Body></soapenv:Envelope>
> Fault handling fails due to an unmapped namespace error ("prefix xsd is not bound to a namespace"). It appears that namespace declarations from the SOAP envelope are not propagated when unmarshalling the exception detail in ClientFaultConverter.
> The relevant stack trace is:
> at com.sun.xml.bind.DatatypeConverterImpl._parseQName(DatatypeConverterImpl.java:369)
> at com.sun.xml.bind.v2.runtime.unmarshaller.XsiTypeLoader.parseXsiType(XsiTypeLoader.java:96)
> at com.sun.xml.bind.v2.runtime.unmarshaller.XsiTypeLoader.startElement(XsiTypeLoader.java:74)
> at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext._startElement(UnmarshallingContext.java:576)
> at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext.startElement(UnmarshallingContext.java:555)
> at com.sun.xml.bind.v2.runtime.unmarshaller.InterningXmlVisitor.startElement(InterningXmlVisitor.java:75)
> at com.sun.xml.bind.v2.runtime.unmarshaller.SAXConnector.startElement(SAXConnector.java:168)
> at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:244)
> at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:281)
> at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:250)
> at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:281)
> at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:250)
> at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:281)
> at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:250)
> at com.sun.xml.bind.unmarshaller.DOMScanner.scan(DOMScanner.java:127)
> at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:369)
> at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:348)
> at org.apache.cxf.jaxb.JAXBEncoderDecoder.doUnmarshal(JAXBEncoderDecoder.java:834)
> at org.apache.cxf.jaxb.JAXBEncoderDecoder.access$100(JAXBEncoderDecoder.java:102)
> at org.apache.cxf.jaxb.JAXBEncoderDecoder$2.run(JAXBEncoderDecoder.java:894)
> at java.security.AccessController.doPrivileged(Native Method)
> at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:892)
> at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:712)
> at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java:176)
> at org.apache.cxf.interceptor.ClientFaultConverter.processFaultDetail(ClientFaultConverter.java:155)
> at org.apache.cxf.interceptor.ClientFaultConverter.handleMessage(ClientFaultConverter.java:82)
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)