Hi all!

The databinding classes that wsdl2java (axis2 1.0 RC4) generates lack some methods to get the objects corresponding to an arbitrary number of element inside a choice wsdl definition.

The wsdl uses an xsd (http://www.ivoa.net/xml/VOTable/v1.1) that presents a fragment which describes a table element that can have an arbitrary number of fields or params or groups. The corresponding class generated doesn't have anymore the methods getFIELDArray(), getPARAMArray() and getGROUPArray() - those method were generated till axis2 v0.94 - or something analogous. Am I doing something wrong?

Thanks very much for any help!

Diego

========================================================================
        fragment of xsd (http://www.ivoa.net/xml/VOTable/v1.1)
========================================================================

<!-- A TABLE is a sequence of FIELD/PARAMs and LINKS and DESCRIPTION, possibly followed by a DATA section -->
  <xs:element name="TABLE">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="DESCRIPTION" minOccurs="0"/>

        <xs:choice minOccurs="0" maxOccurs="unbounded">
          <xs:element ref="FIELD" />
          <xs:element ref="PARAM" />
          <xs:element ref="GROUP" />
        </xs:choice>

        <xs:element ref="LINK" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="DATA" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="ID"   type="xs:ID"/>
      <xs:attribute name="name" type="xs:token"/>
      <xs:attribute name="ref"  type="xs:IDREF"/>
      <xs:attribute name="ucd"  type="ucdType"/>
      <xs:attribute name="utype" type="xs:string"/>
      <xs:attribute name="nrows" type="xs:nonNegativeInteger"/>
    </xs:complexType>
  </xs:element>

========================================================================
                           wsdl file
========================================================================

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://astrodas.org/ws/peer";
                        xmlns:tns="http://astrodas.org/ws/peer";
                       xmlns:tns1="http://astrodas.org/ws/model";
                       xmlns:tns2="http://www.ivoa.net/xml/VOTable/v1.1";
                       xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
                       xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
                        xmlns:xsd="http://www.w3.org/2001/XMLSchema";>

 <wsdl:types>
<xsd:schema elementFormDefault="qualified" targetNamespace="http://astrodas.org/ws/model";>
   <xsd:import namespace="http://www.w3.org/2001/XMLSchema"; />
   <!--
<xsd:import namespace="http://www.ivoa.net/xml/VOTable/v1.1"; schemaLocation="xsd/votable.xsd" />
   -->
<xsd:import namespace="http://www.ivoa.net/xml/VOTable/v1.1"; schemaLocation="http://www.ivoa.net/xml/VOTable/v1.1"; />
   <!-- insertMappingAnnotations -->
   <xsd:complexType name="external-object">
    <xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="id" type="xsd:integer" /> <xsd:element minOccurs="1" maxOccurs="1" name="external-id" type="xsd:integer" /> <xsd:element minOccurs="1" maxOccurs="1" name="external-db" type="xsd:string" /> <xsd:element minOccurs="1" maxOccurs="1" name="match" type="xsd:boolean" />
    </xsd:sequence>
   </xsd:complexType>
   <xsd:complexType name="annotation">
    <xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="id" type="xsd:integer" /> <xsd:element minOccurs="0" maxOccurs="1" name="type" type="xsd:string" /> <xsd:element minOccurs="1" maxOccurs="1" name="author" type="xsd:string" /> <xsd:element minOccurs="0" maxOccurs="1" name="timestamp" type="xsd:string" />
    </xsd:sequence>
   </xsd:complexType>
   <xsd:complexType name="mapping-annotation">
    <xsd:complexContent mixed="false">
     <xsd:extension base="tns1:annotation">
      <xsd:sequence>
<xsd:element minOccurs="1" maxOccurs="unbounded" name="external-object" type="tns1:external-object" /> <xsd:element minOccurs="0" maxOccurs="1" name="text" type="xsd:string" /> <xsd:element minOccurs="0" maxOccurs="1" name="reliability" type="xsd:float" /> <xsd:element minOccurs="0" maxOccurs="1" name="ra-mean" type="xsd:double" /> <xsd:element minOccurs="0" maxOccurs="1" name="dec-mean" type="xsd:double" />
      </xsd:sequence>
     </xsd:extension>
    </xsd:complexContent>
   </xsd:complexType>
   <xsd:element name="insertMappingAnnotations">
    <xsd:complexType>
     <xsd:sequence>
<xsd:element minOccurs="1" maxOccurs="unbounded" name="mapping-annotation" type="tns1:mapping-annotation" />
     </xsd:sequence>
    </xsd:complexType>
   </xsd:element>
   <xsd:element name="insertMappingAnnotationsResponse">
    <xsd:complexType>
     <xsd:sequence>
<xsd:element minOccurs="1" maxOccurs="1" name="result" type="xsd:int" />
     </xsd:sequence>
    </xsd:complexType>
   </xsd:element>
   <!-- executeGlobalMappingTableQuery -->
   <xsd:element name="executeGlobalMappingTableQuery">
    <xsd:complexType>
     <xsd:sequence>
<xsd:element minOccurs="1" maxOccurs="1" name="query" type="xsd:string" />
     </xsd:sequence>
    </xsd:complexType>
   </xsd:element>
   <xsd:element name="executeGlobalMappingTableQueryResponse">
    <xsd:complexType>
     <xsd:sequence>
      <xsd:element minOccurs="1" maxOccurs="1" ref="tns2:VOTABLE" />
     </xsd:sequence>
    </xsd:complexType>
   </xsd:element>
  </xsd:schema>
 </wsdl:types>

 <!-- insertMappingAnnotations -->
 <wsdl:message name="insertMappingAnnotationsMessage">
  <wsdl:part name="body" element="tns1:insertMappingAnnotations" />
 </wsdl:message>
 <wsdl:message name="insertMappingAnnotationsResponseMessage">
  <wsdl:part name="body" element="tns1:insertMappingAnnotationsResponse" />
 </wsdl:message>
 <!-- executeGlobalMappingTableQuery -->
 <wsdl:message name="executeGlobalMappingTableQueryMessage">
  <wsdl:part name="body" element="tns1:executeGlobalMappingTableQuery" />
 </wsdl:message>
 <wsdl:message name="executeGlobalMappingTableQueryResponseMessage">
<wsdl:part name="body" element="tns1:executeGlobalMappingTableQueryResponse" />
 </wsdl:message>
        
 <wsdl:portType name="AstrodasPeer">
  <wsdl:operation name="insertMappingAnnotations">
<wsdl:documentation>Stores an array of annotations in the annotation backend database</wsdl:documentation>
   <wsdl:input message="tns:insertMappingAnnotationsMessage" />
   <wsdl:output message="tns:insertMappingAnnotationsResponseMessage" />
  </wsdl:operation>
  <wsdl:operation name="executeGlobalMappingTableQuery">
<wsdl:documentation>Executes a query on the global mapping table of the p2p network of annotation</wsdl:documentation>
   <wsdl:input message="tns:executeGlobalMappingTableQueryMessage" />
<wsdl:output message="tns:executeGlobalMappingTableQueryResponseMessage" />
  </wsdl:operation>
 </wsdl:portType>

 <wsdl:binding name="AstrodasPeerBinding" type="tns:AstrodasPeer">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http"; style="document" />
  <wsdl:operation name="insertMappingAnnotations">
   <soap:operation soapAction="insertMappingAnnotations" />
   <wsdl:input>
    <soap:body use="literal" />
   </wsdl:input>
   <wsdl:output>
    <soap:body use="literal" />
   </wsdl:output>
  </wsdl:operation>
  <wsdl:operation name="executeGlobalMappingTableQuery">
   <soap:operation soapAction="executeGlobalMappingTableQuery" />
   <wsdl:input>
    <soap:body use="literal" />
   </wsdl:input>
   <wsdl:output>
    <soap:body use="literal" />
   </wsdl:output>
  </wsdl:operation>
 </wsdl:binding>

 <wsdl:service name="astrodas-peer">
  <wsdl:port name="astrodas-peer" binding="tns:AstrodasPeerBinding">
<soap:address location="http://localhost:8080/axis2/services/astrodas-peer"; />
  </wsdl:port>
 </wsdl:service>

</wsdl:definitions>

Reply via email to