[
https://issues.apache.org/jira/browse/CXF-5254?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Daniel Kulp updated CXF-5254:
-----------------------------
Attachment: patch.txt
We really need to support both cases. In a "wsdl first" scenario, the current
code is likely needed as the normal setup is for arrays to be in the unwrapped
form. For idl first, the wrappers are likely needed.
I've attached a patch that expands the corba typemapping a bit to record on the
sequence element whether it should be wrapped or not. Can you give that a try
and use that as a basis? The CXF tests pass, but I haven't checked to see if
the testcase for this is completely solved with this yet.
> Unmarshall exception if a sequence<string> is used in a struct.
> ---------------------------------------------------------------
>
> Key: CXF-5254
> URL: https://issues.apache.org/jira/browse/CXF-5254
> Project: CXF
> Issue Type: Bug
> Components: CORBA Binding
> Affects Versions: 2.7.5, 2.7.6
> Environment: JAVA7 / Windows 7
> Reporter: Juergen Bockhorn
> Priority: Blocker
> Attachments: CorbaBugRepro.zip, patch.txt
>
>
> A server function returns a struct. This struct contains another struct which
> contains a sequence<string>. Calling this method with a CXF/Corba-Client
> leads to an unmarshall exception:
> {code}
> Warnung: Interceptor for
> {http://cxf.apache.org/bindings/corba/idl/repro}repro.ServiceCORBAService#{http://cxf.apache.org/bindings/corba/idl/repro}getFirst
> has thrown exception, unwinding now
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: unerwartetes Element
> (URI:"", lokal:"item"). Erwartete Elemente sind
> <{http://cxf.apache.org/bindings/corba/idl/repro}id>,<{http://cxf.apache.org/bindings/corba/idl/repro}s1>
>
> at
> org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:808)
> at
> org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:629)
> at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java:157)
> at
> org.apache.cxf.interceptor.BareInInterceptor.handleMessage(BareInInterceptor.java:138)
> ...
> {code}
> (sorry for german).
> Using a pure CORBA-client works.
> I will attach a repro project to this issue if I have figured out how it
> works :-)
--
This message was sent by Atlassian JIRA
(v6.1#6144)