Hello, to solve the problem I had to declare an element of the complexType TestVO in the .wsdl
<element name="TestVOElement" type="tns:TestVO"/> The declaration of the variable in the .bpel file must be of the element type: <bpel:variable name="mytestvo" element="tns:TestVOElement"></bpel:variable> Initialize: <bpel:copy> <bpel:from> <bpel:literal xml:space="preserve"> <tns:TestVOElement xmlns:tns="http://BPELVoTest" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <tns:TestVO> <tns:key></tns:key> <tns:value></tns:value> </tns:TestVO> </tns:TestVOElement> </bpel:literal> </bpel:from> <bpel:to variable="mytestvo"> </bpel:to> </bpel:copy> Fill: <bpel:copy> <bpel:from part="payload" variable="input"></bpel:from> <bpel:to variable="mytestvo"> <bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"> <![CDATA[tns:TestVO/tns:key]]> </bpel:query> </bpel:to> </bpel:copy> Add to response: <bpel:copy> <bpel:from> <![CDATA[ode:insert-as-last-into($output.payload, $mytestvo)]]> </bpel:from> <bpel:to part="payload" variable="output"> </bpel:to> </bpel:copy> The SOAP Response <?xml version='1.0' encoding='utf-8'?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <BPELVoTestResponse xmlns="http://BPELVoTest"> <TestVOElement> <tns:TestVO xmlns:tns="http://BPELVoTest"> <key><input>tut</input></key> <tns:value /> </tns:TestVO> </TestVOElement> </BPELVoTestResponse> </soapenv:Body> </soapenv:Envelope> After that the ODE engine seems to use the root-element I initialized instead of wrapping it with a "xsd-complex-type-wrapper" element. I dont know if this is the right behavior in this case but using the element instead of the complex-type will be at least a workaround. Have a nice weekend, Kathrin -------- Original-Nachricht -------- > Datum: Fri, 26 Jun 2009 08:47:01 +0200 > Von: "Christian Fonden" <[email protected]> > An: [email protected] > Betreff: Re: Complex type wrapper element is still visible in messages sent > by the engine > Hello, > > I get the same using the ode trunk source code. I think this is somehow > related with imported xsd type definitions that use other xsd types for > themselves. > Kathrin, I think we should reopen ODE-110. Do you agree? > > > Greets from Germany too, > Chris > > > ----- Original Message ----- > From: <[email protected]> > To: <[email protected]> > Sent: Monday, June 22, 2009 7:31 PM > Subject: Complex type wrapper element is still visible in messages sent by > the engine > > > > Hallo @ all, > > > > I receive a <xsd-complex-type-wrapper> element from my BPEL Process. As > > documented here > > https://issues.apache.org/jira/browse/ODE-110 > > the problem should be fixed but I get the same result with ODE Version > > 1.3.2. > > > > Used ODE Version: 1.3.2 > > > > The message definition in the .wsdl: > > <element name="BPELVoTestResponse"> > > <complexType> > > <sequence> > > <element maxOccurs="unbounded" minOccurs="0" nillable="true" > > name="result" type="tns:TestVO"/> > > </sequence> > > </complexType> > > </element> > > > > The Definition of the complexType: > > <complexType name="TestVO"> > > <sequence> > > <element minOccurs="0" name="key" nillable="true" type="string"/> > > <element minOccurs="0" name="value" nillable="true" type="string"/> > > </sequence> > > </complexType> > > > > The varible declaration in my .bpel: > > <bpel:variable name="mytestvo" type="tns:TestVO"></bpel:variable> > > > > Initialize > > <bpel:copy> > > <bpel:from> > > <bpel:literal xml:space="preserve"> > > <tns:TestVO xmlns:tns="http://BPELVoTest" > > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> > > <tns:key></tns:key> > > <tns:value></tns:value> > > </tns:TestVO> > > </bpel:literal> > > </bpel:from> > > <bpel:to variable="mytestvo"> > > </bpel:to> > > </bpel:copy> > > > > <bpel:copy> > > <bpel:from> > > <bpel:literal xml:space="preserve"> > > <tns:BPELVoTestResponse xmlns:tns="http://BPELVoTest" > > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> > > </tns:BPELVoTestResponse> > > </bpel:literal> > > </bpel:from> > > <bpel:to variable="output" part="payload"></bpel:to> > > </bpel:copy> > > > > Fill > > <bpel:copy> > > <bpel:from part="payload" variable="input"></bpel:from> > > <bpel:to variable="mytestvo"> > > <bpel:query > > queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"> > > <![CDATA[tns:key]]> > > </bpel:query> > > </bpel:to> > > </bpel:copy> > > > > Add to response > > <bpel:copy> > > <bpel:from> > > <![CDATA[ode:insert-as-last-into($output.payload, $mytestvo)]]> > > </bpel:from> > > <bpel:to part="payload" variable="output"> > > </bpel:to> > > </bpel:copy> > > > > The response off my process: > > <?xml version='1.0' encoding='utf-8'?> > > <soapenv:Envelope > > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> > > <soapenv:Body> > > <BPELVoTestResponse xmlns="http://BPELVoTest"> > > <xsd-complex-type-wrapper xmlns=""> > > <key xmlns="http://BPELVoTest"> > > <input>tut</input> > > </key> > > <tns:value xmlns:tns="http://BPELVoTest" /> > > </xsd-complex-type-wrapper> > > </BPELVoTestResponse> > > </soapenv:Body> > > </soapenv:Envelope> > > > > Perhaps I'm doing something wrong... I hope somebody can help me. > > > > Nice greetings from Germany, > > > > Kathrin > > -- > > GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT! > > Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01 -- GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT! Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01
