You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Andrew Lamb (JIRA)" <ji...@apache.org> on 2010/08/19 22:56:17 UTC

[jira] Created: (CXF-2952) Corba Use Case: CXF/JAX-WS Server and CXF/JAX-WS Client with corba:sequence produces Unmarshalling Error: null

Corba Use Case: CXF/JAX-WS Server and CXF/JAX-WS Client with corba:sequence produces Unmarshalling Error: null 
---------------------------------------------------------------------------------------------------------------

                 Key: CXF-2952
                 URL: https://issues.apache.org/jira/browse/CXF-2952
             Project: CXF
          Issue Type: Bug
          Components: CORBA Binding
    Affects Versions: 2.2.9
         Environment: OS: XP and HPUX 
Version: cxf-2.2.9 and cxf-2.3.0-SNAPSHOT 
Components: java6, Sun's orbd
            Reporter: Andrew Lamb


Using CORBA bindings, given the following types (in the corba wsdl),  a HelloWorld message succeeds if the inparameter is of type "MyItem" but not for "MyItemVector". 

      <xs:complexType name="MyItem"> 
        <xs:sequence> 
          <xs:element name="newMyString" type=" xs:string"></xs:element> 
        </xs:sequence> 
      </xs:complexType> 
      
      <xs:complexType name="MyItemVector"> 
        <xs:sequence> 
          <xs:element maxOccurs="1000" minOccurs="0" name="item" type="MyItem"></xs:element> 
        </xs:sequence> 
      </xs:complexType> 


In the failure case, the CXF client fires off the request which triggers an error on the CXF server: "org.apache.cxf.interceptor.Fault: Unmarshalling Error: null".

Attached is a HelloWorld project  based on the distribution sample "Hello World CORBA Demo" (specifically  "Use Case 3 - CXF/JAX-WS Server, CXF/JAX-WS Client") which exposes the behavior.
 

To reproduce:
1. Untar ApacheCxfProblem.tar
2. Configure ApacheCxfProblem/config/.profile 

      export PROJECT_HOME=<full path>/ApacheCxfProblem 
      export CXF_HOME=<full path>/apache-cxf-2.2.9 

3. From the ApacheCxfProblem/bin directory execute 

     . ../config/.profile 
     ./runns.sh 
     ./runserver.sh 
     ./runclient.sh 


Additional Notes:

Based upon the HelloWorld.idl, a wsdl file and java files were created using the following commands:

      idl2wsdl -o wsdl idl/HelloWorld.idl
      wsdl2java -p com -d gen_src wsdl/HelloWorld.wsdl


The full server stack trace: 

org.apache.cxf.interceptor.Fault: Unmarshalling Error: null 
        at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:780) 
        at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:624) 
        at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java:128) 
        at org.apache.cxf.interceptor.BareInInterceptor.handleMessage(BareInInterceptor.java:138) 
        at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:243) 
        at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:110) 
        at org.apache.cxf.binding.corba.runtime.CorbaDSIServant.invoke(CorbaDSIServant.java:175) 
        at com.sun.corba.se.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:626) 
        at com.sun.corba.se.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:189) 
        at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1682) 
        at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1540) 
        at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:922) 
        at com.sun.corba.se.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:181) 
        at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:694) 
        at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.dispatch(SocketOrChannelConnectionImpl.java:451) 
        at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.doWork(SocketOrChannelConnectionImpl.java:1213) 
        at com.sun.corba.se.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.performWork(ThreadPoolImpl.java:471) 
        at com.sun.corba.se.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:500) 
Caused by: java.lang.NullPointerException 
        at org.apache.cxf.binding.corba.runtime.CorbaStreamReader.getTextCharacters(CorbaStreamReader.java:49) 
        at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.handleCharacters(StAXStreamConnector.java:323) 
        at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge(StAXStreamConnector.java:187) 
        at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:360) 
        at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:339) 
        at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:755) 
        ... 17 more

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


[jira] Updated: (CXF-2952) Corba Use Case: CXF/JAX-WS Server and CXF/JAX-WS Client with corba:sequence produces Unmarshalling Error: null

Posted by "Andrew Lamb (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CXF-2952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Lamb updated CXF-2952:
-----------------------------

    Attachment: ApacheCxfProblem.tar

> Corba Use Case: CXF/JAX-WS Server and CXF/JAX-WS Client with corba:sequence produces Unmarshalling Error: null 
> ---------------------------------------------------------------------------------------------------------------
>
>                 Key: CXF-2952
>                 URL: https://issues.apache.org/jira/browse/CXF-2952
>             Project: CXF
>          Issue Type: Bug
>          Components: CORBA Binding
>    Affects Versions: 2.2.9
>         Environment: OS: XP and HPUX 
> Version: cxf-2.2.9 and cxf-2.3.0-SNAPSHOT 
> Components: java6, Sun's orbd
>            Reporter: Andrew Lamb
>         Attachments: ApacheCxfProblem.tar
>
>
> Using CORBA bindings, given the following types (in the corba wsdl),  a HelloWorld message succeeds if the inparameter is of type "MyItem" but not for "MyItemVector". 
>       <xs:complexType name="MyItem"> 
>         <xs:sequence> 
>           <xs:element name="newMyString" type=" xs:string"></xs:element> 
>         </xs:sequence> 
>       </xs:complexType> 
>       
>       <xs:complexType name="MyItemVector"> 
>         <xs:sequence> 
>           <xs:element maxOccurs="1000" minOccurs="0" name="item" type="MyItem"></xs:element> 
>         </xs:sequence> 
>       </xs:complexType> 
> In the failure case, the CXF client fires off the request which triggers an error on the CXF server: "org.apache.cxf.interceptor.Fault: Unmarshalling Error: null".
> Attached is a HelloWorld project  based on the distribution sample "Hello World CORBA Demo" (specifically  "Use Case 3 - CXF/JAX-WS Server, CXF/JAX-WS Client") which exposes the behavior.
>  
> To reproduce:
> 1. Untar ApacheCxfProblem.tar
> 2. Configure ApacheCxfProblem/config/.profile 
>       export PROJECT_HOME=<full path>/ApacheCxfProblem 
>       export CXF_HOME=<full path>/apache-cxf-2.2.9 
> 3. From the ApacheCxfProblem/bin directory execute 
>      . ../config/.profile 
>      ./runns.sh 
>      ./runserver.sh 
>      ./runclient.sh 
> Additional Notes:
> Based upon the HelloWorld.idl, a wsdl file and java files were created using the following commands:
>       idl2wsdl -o wsdl idl/HelloWorld.idl
>       wsdl2java -p com -d gen_src wsdl/HelloWorld.wsdl
> The full server stack trace: 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: null 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:780) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:624) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java:128) 
>         at org.apache.cxf.interceptor.BareInInterceptor.handleMessage(BareInInterceptor.java:138) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:243) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:110) 
>         at org.apache.cxf.binding.corba.runtime.CorbaDSIServant.invoke(CorbaDSIServant.java:175) 
>         at com.sun.corba.se.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:626) 
>         at com.sun.corba.se.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:189) 
>         at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1682) 
>         at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1540) 
>         at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:922) 
>         at com.sun.corba.se.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:181) 
>         at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:694) 
>         at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.dispatch(SocketOrChannelConnectionImpl.java:451) 
>         at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.doWork(SocketOrChannelConnectionImpl.java:1213) 
>         at com.sun.corba.se.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.performWork(ThreadPoolImpl.java:471) 
>         at com.sun.corba.se.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:500) 
> Caused by: java.lang.NullPointerException 
>         at org.apache.cxf.binding.corba.runtime.CorbaStreamReader.getTextCharacters(CorbaStreamReader.java:49) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.handleCharacters(StAXStreamConnector.java:323) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge(StAXStreamConnector.java:187) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:360) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:755) 
>         ... 17 more

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