NPE in DatatypeConverter after updating to 2.2.4
------------------------------------------------

                 Key: CXF-2492
                 URL: https://issues.apache.org/jira/browse/CXF-2492
             Project: CXF
          Issue Type: Bug
          Components: JAXB Databinding
    Affects Versions: 2.2.4
         Environment: Java 1.5
            Reporter: Dennis Kieselhorst
            Priority: Blocker


Updated from 2.2.3 to 2.2.4. Now a NullPointer occurs if a nil date is in the 
soap response:
        <java:DeactivationDate xsi:nil="true" xmlns:java="java:de.testing"/>

Caused by: org.apache.cxf.interceptor.Fault: Unmarshalling Error: 
java.lang.NullPointerException
        at 
org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:661)
        at 
org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:533)
        at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java:128)
        at 
org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage(DocLiteralInInterceptor.java:99)
        at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
        at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:664)
        at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:2160)
        at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2040)
        at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1965)
        at 
org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
        at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:627)
        at 
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
        at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:478)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:308)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:260)
        at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
        at 
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:124)
        ... 79 more
Caused by: javax.xml.bind.UnmarshalException
 - with linked exception:
[javax.xml.bind.UnmarshalException: java.lang.NullPointerException
 - with linked exception:
[com.sun.xml.bind.api.AccessorException: java.lang.NullPointerException]]
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamException(UnmarshallerImpl.java:425)
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:362)
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:339)
        at 
org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:646)
        ... 96 more
Caused by: javax.xml.bind.UnmarshalException: java.lang.NullPointerException
 - with linked exception:
[com.sun.xml.bind.api.AccessorException: java.lang.NullPointerException]
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext.handleEvent(UnmarshallingContext.java:642)
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.Loader.reportError(Loader.java:254)
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.Loader.handleGenericException(Loader.java:241)
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.XsiNilLoader$Single.onNil(XsiNilLoader.java:111)
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.XsiNilLoader.selectLoader(XsiNilLoader.java:69)
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.ProxyLoader.startElement(ProxyLoader.java:53)
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext._startElement(UnmarshallingContext.java:481)
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext.startElement(UnmarshallingContext.java:459)
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.handleStartElement(StAXStreamConnector.java:242)
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge(StAXStreamConnector.java:176)
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:360)
        ... 98 more
Caused by: javax.xml.bind.UnmarshalException: java.lang.NullPointerException
 - with linked exception:
[com.sun.xml.bind.api.AccessorException: java.lang.NullPointerException]
        ... 109 more
Caused by: com.sun.xml.bind.api.AccessorException: 
java.lang.NullPointerException
        at 
com.sun.xml.bind.v2.runtime.reflect.AdaptedAccessor.set(AdaptedAccessor.java:83)
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.XsiNilLoader$Single.onNil(XsiNilLoader.java:108)
        ... 105 more
Caused by: java.lang.NullPointerException
        at javax.xml.bind.WhiteSpaceProcessor.trim(WhiteSpaceProcessor.java:63)
        at 
javax.xml.bind.DatatypeConverterImpl._parseDateTime(DatatypeConverterImpl.java:310)
        at 
javax.xml.bind.DatatypeConverterImpl.parseDateTime(DatatypeConverterImpl.java:306)
        at 
javax.xml.bind.DatatypeConverter.parseDateTime(DatatypeConverter.java:282)
        at 
de.ewetel.easynet.core.dao.easytel.soap.stub.manageaccountlink.Adapter1.unmarshal(Adapter1.java:13)
        at 
de.ewetel.easynet.core.dao.easytel.soap.stub.manageaccountlink.Adapter1.unmarshal(Adapter1.java:7)
        at 
com.sun.xml.bind.v2.runtime.reflect.AdaptedAccessor.set(AdaptedAccessor.java:81)
        ... 106 more

Binding config:
<jxb:javaType name="java.util.Calendar"
        xmlType="xs:dateTime"
        parseMethod="javax.xml.bind.DatatypeConverter.parseDateTime"
        printMethod="javax.xml.bind.DatatypeConverter.printDateTime" />

Since the jaxb dependencies didn't change, I assume that this is a cxf issue.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to