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)