You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by bu...@apache.org on 2004/04/21 10:26:26 UTC

DO NOT REPLY [Bug 26548] - local xsd:group constructs are not processed properly

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=26548>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=26548

local xsd:group constructs are not processed properly





------- Additional Comments From Andrei.Iltchenko@nl.compuware.com  2004-04-21 08:26 -------
The fix we supplied earlier contains a bug which serfaces when minOccurs and 
maxOccurs attributes are used with model group references.

For instance, given this xsd definition

      <xsd:complexType name="phone">
        <xsd:group ref="typens:phoneGroup" maxOccurs="unbounded"/>
      </xsd:complexType>

      <xsd:group name="phoneGroup">
        <xsd:sequence>
          <xsd:element name="areaCode" type="xsd:int"/>
          <xsd:element name="exchange" type="xsd:string"/>
          <xsd:element name="number" type="xsd:string"/>
        </xsd:sequence>
      </xsd:group>

WSDL2Java will generate a bean class with incorrect setters and getters:

public class Phone  implements java.io.Serializable {
    private AddressFetcher2.PhoneGroup[] phoneGroupUnbounded;

    public Phone() {
    }

    public AddressFetcher2.PhoneGroup[] getPhoneGroupUnbounded() {
        return phoneGroupUnbounded;
    }

    public void setPhoneGroupUnbounded(AddressFetcher2.PhoneGroup[] 
phoneGroupUnbounded) {
        this.phoneGroupUnbounded = phoneGroupUnbounded;
    }

The patch I am attaching rectifies the issue.