Hi,

code concerning that have been committed few days ago.
Can you try the latest CVS version and let
me know what happen.

Thanks,

Arnaud

-----Original Message-----
From: Srikanth Ganapavarapu [mailto:[EMAIL PROTECTED]]
Sent: Thursday, September 06, 2001 7:47 PM
To: [EMAIL PROTECTED]
Subject: [castor-dev] StackOverflowError


Hey,

We are trying to use the below .xsd file content with Castor 0.9.3.
If you observe there exists some circular references among "event",
"location" and "showTime".


<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema";
  targetNamespace="http://castor.exolab.org/Test/Invoice";>

   <xsd:annotation>
      <xsd:documentation>
         This is a reference XML Schema to compare against the generated
         schema from the event mapping xml file.
      </xsd:documentation>
   </xsd:annotation>

   <xsd:element name="event">
      <xsd:annotation>
         <xsd:documentation>
             Event description information
         </xsd:documentation>
      </xsd:annotation>

      <xsd:complexType>
        <xsd:sequence>
            <xsd:element name="id" type="xsd:long"/>
            <xsd:element name="name" type="xsd:string"/>
            <xsd:element ref="showTime" maxOccurs="unbounded" minOccurs="1"/>
            <xsd:element ref="location" maxOccurs="unbounded" minOccurs="1"/>
       </xsd:sequence>
      </xsd:complexType>
   </xsd:element>

   <xsd:element name="location">
      <xsd:annotation>
         <xsd:documentation>
             The physical or virtual location of an event
         </xsd:documentation>
      </xsd:annotation>

      <xsd:complexType>
        <xsd:sequence>
            <xsd:element name="id" type="xsd:long"/>
            <xsd:element name="name" type="xsd:string"/>
            <xsd:element ref="showTime" maxOccurs="unbounded" minOccurs="1"/>
            <xsd:element ref="event" maxOccurs="unbounded" minOccurs="1"/>
       </xsd:sequence>
      </xsd:complexType>
   </xsd:element>

   <xsd:element name="showTime">
      <xsd:annotation>
         <xsd:documentation>
             Show time information
         </xsd:documentation>
      </xsd:annotation>

      <xsd:complexType>
        <xsd:sequence>
            <xsd:element name="id" type="xsd:long"/>
            <xsd:element name="startTime" type="xsd:dateTime"/>
            <xsd:element name="endTime" type="xsd:dateTime"/>
            <xsd:element ref="location"/>
            <xsd:element ref="event"/>
       </xsd:sequence>
      </xsd:complexType>
   </xsd:element>

</xsd:schema>


We expect castor to process this. But it is resulting in a
java.lang.StackOverflowError and terminating.

Exception in thread "main" java.lang.StackOverflowError
        at org.exolab.castor.xml.schema.Group.enumerate(Group.java:326)
        at
org.exolab.castor.builder.SourceFactory.processContentModel(SourceFactory.java:1
316)
        at
org.exolab.castor.builder.SourceFactory.processContentModel(SourceFactory.java:1
403)
        at
org.exolab.castor.builder.SourceFactory.processComplexType(SourceFactory.java:12
74)
                    <<<...... the below four lines are repeated for some 100
times here ....>>>
        at
org.exolab.castor.builder.SourceFactory.createSourceCode(SourceFactory.java:237)
        at
org.exolab.castor.builder.SourceFactory.processContentModel(SourceFactory.java:1
364)
        at
org.exolab.castor.builder.SourceFactory.processContentModel(SourceFactory.java:1
403)
        at
org.exolab.castor.builder.SourceFactory.processComplexType(SourceFactory.java:12
74)

Does anyone know anything about this?

thanks
Srikanth Ganapavarapu
[EMAIL PROTECTED]

----------------------------------------------------------- 
If you wish to unsubscribe from this mailing, send mail to
[EMAIL PROTECTED] with a subject of:
        unsubscribe castor-dev

Reply via email to