Did you specify the style="document" attribute on the jsr181 endpoint ?

On 2/2/07, krhansen <[EMAIL PROTECTED]> wrote:

Been looking a bit more in to it now.

The response is generated in Jsr181Endpoint, through a call to xfire. Here
the trail gets kinda cold for me, because I don't know much of the xfire
code. Can anyone give me some insight into the problem?

I am wondering if it's a configuration that's wrong. Does anyone know
whether you can choose to have xfire make these wrapper elements in the
list?

Best regards

Kristian

krhansen wrote:
>
> I have a service that returns a list of objects. Problem is, that
> Servicemix "wraps" the items in the list in new xml elements, instead of
> just repeating the elements, that have maxOccur = unbounded in the schema
> part of the wsdl. The result is that JAXB on the client cannot parse the
> result received from Servicemix (and that the returned XML is in fact not
> in accordance with the schema fra the service's WSDL-file).
>
> According to the schema in the wsdl file the result should look like this:
> (name spaces removed for readability)
>
> <getSystemRightsout>
>       <systemRights>
>               <rightId>23</rightId>
>               <rightName>Dashboard</rightName>
>       </systemRights>
>       <systemRights>
>               <rightId>234</rightId>
>               <rightName>Mapping</rightName>
>       </systemRights>
> </getSystemRightsout>
>
> ---
>
> But the actual XML returned from Servicemix is:
>
> <getSystemRightsout>
>       <systemRights>
>               <SystemRights>
>                       <rightId>23</rightId>
>                       <rightName>Dashboard</rightName>
>               </SystemRights>
>               <SystemRights>
>                       <rightId>234</rightId>
>                       <rightName>Mapping</rightName>
>               </SystemRights>
>       </systemRights>
> </getSystemRightsout>
>
> ---
>
> The WSDL file looks like this:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions>
>       <wsdl:types>
>               <xs:schema>
>                       <xs:element name="systemRightList">
>                               <xs:complexType>
>                                       <xs:sequence maxOccurs="unbounded" 
minOccurs="0">
>                                               <xs:element name="systemRights">
>                                                       <xs:complexType>
>                                                               <xs:sequence>
>                                                                       <xs:element 
name="rightId"
>                                                                               type="xs:string" 
maxOccurs="1" minOccurs="1">
>                                                                       
</xs:element>
>                                                                       <xs:element 
name="rightTimestamp"
>                                                                               
type="xs:string" minOccurs="0">
>                                                                       
</xs:element>
>                                                                       <xs:element 
name="rightName"
>                                                                               type="xs:string" 
maxOccurs="1" minOccurs="0">
>                                                                       
</xs:element>
>                                                               </xs:sequence>
>                                                       </xs:complexType>
>
>                                               </xs:element>
>                                       </xs:sequence>
>                               </xs:complexType>
>                       </xs:element>
>               </xs:schema>
>
>       </wsdl:types>
>
>       <wsdl:message name="getSystemRightsRequest">
>               <wsdl:part name="systemRights"
> element="tns:systemRightList"></wsdl:part>
>       </wsdl:message>
>       <wsdl:message name="getSystemRightsResponse">
>               <wsdl:part name="systemRightList"
>                       element="tns:systemRightList">
>               </wsdl:part>
>       </wsdl:message>
>       <wsdl:portType name="Accounts">
>               <wsdl:operation name="getSystemRights">
>                       <wsdl:input 
message="tns:getSystemRightsRequest"></wsdl:input>
>                       <wsdl:output 
message="tns:getSystemRightsResponse"></wsdl:output>
>               </wsdl:operation>
>       </wsdl:portType>
>       <wsdl:binding name="accountsSOAP" type="tns:Accounts">
>               <soap:binding style="document"
>                       transport="http://schemas.xmlsoap.org/soap/http"; />
>               <wsdl:operation name="getSystemRights">
>                       <soap:operation
>                               
soapAction="http://fooh.com/services/accounts/getSystemRights"; />
>                       <wsdl:input>
>                               <soap:body use="literal" />
>                       </wsdl:input>
>                       <wsdl:output>
>                               <soap:body use="literal" />
>                       </wsdl:output>
>               </wsdl:operation>
>       </wsdl:binding>
>       <wsdl:service name="Accounts">
>               <wsdl:port binding="tns:accountsSOAP" name="accountsSOAP">
>                       <soap:address
>                               location="http://0.0.0.0:8192/services/accounts/"; 
/>
>               </wsdl:port>
>       </wsdl:service>
> </wsdl:definitions>
>
> ---
> Thanks in advance.
>
> Best regards
>
> Kristian
>
>

--
View this message in context: 
http://www.nabble.com/WSDL-with-lists-in-return-type-tf3149009s12049.html#a8772036
Sent from the ServiceMix - User mailing list archive at Nabble.com.




--
Cheers,
Guillaume Nodet
------------------------
Architect, LogicBlaze (http://www.logicblaze.com/)
Blog: http://gnodet.blogspot.com/

Reply via email to