Last night I found myself trying to generate jdo metadata that contains a collection whose values need to be marked with dependent-element, per latest JDO 2.0 spec. I found that xdoclet was not generating the attribute for me if I put the appropriate tag in my source file. A little digging brought me to find that an xdt file had not been updated with this attribute yet. I added a couple of lines the xdt file and it appears to be working for me as I would expect it to.

I have attached a patch file showing the change. I hope this is accurate and I hope this helps.

Thanks.



jeff

--
Autism Strikes 1 in 250
Find The Cause ~ Find The Cure
http://www.autism-society.org/

Jeff Brown
[EMAIL PROTECTED]
Principal Software Engineer
Object Computing Inc.
http://www.ociweb.com/

Index: modules/jdo/src/META-INF/xtags.xml
===================================================================
RCS file: /cvsroot/xdoclet/xdoclet/modules/jdo/src/META-INF/xtags.xml,v
retrieving revision 1.12
diff -u -r1.12 xtags.xml
--- modules/jdo/src/META-INF/xtags.xml  21 Feb 2005 15:56:42 -0000      1.12
+++ modules/jdo/src/META-INF/xtags.xml  9 Mar 2005 16:37:01 -0000
@@ -220,6 +220,16 @@
           <condition-description>Must be used with collection or array valued 
persistent field</condition-description>
         </parameter>
         <parameter type="bool">
+          <name>dependent-element</name>
+          <usage-description>
+                The dependent-element property specifies whether the elements
+                of the collection are to be considered dependent on the owner
+                object. 
+          </usage-description>
+          <mandatory>false</mandatory>
+          <condition-description>Must be used with collection valued 
persistent field</condition-description>
+        </parameter>
+        <parameter type="bool">
           <name>embedded-element</name>
           <usage-description>
                 The embedded-element property specifies whether the elements 
of a collection or array-valued persistent 
Index: 
modules/jdo/src/xdoclet/modules/jdo/resources/jdo_xml.package_class_field.xdt
===================================================================
RCS file: 
/cvsroot/xdoclet/xdoclet/modules/jdo/src/xdoclet/modules/jdo/resources/jdo_xml.package_class_field.xdt,v
retrieving revision 1.4
diff -u -r1.4 jdo_xml.package_class_field.xdt
--- 
modules/jdo/src/xdoclet/modules/jdo/resources/jdo_xml.package_class_field.xdt   
    21 Feb 2005 15:56:42 -0000      1.4
+++ 
modules/jdo/src/xdoclet/modules/jdo/resources/jdo_xml.package_class_field.xdt   
    9 Mar 2005 16:22:42 -0000
@@ -60,9 +60,12 @@
       
          <XDtField:ifFieldTagValueEquals tagName="jdo.field" 
paramName="collection-type" value="collection">
           <collection
-           <XDtField:ifHasFieldTag tagName="jdo.field" 
paramName="element-type">
-                      element-type="<XDtField:fieldTagValue 
tagName="jdo.field" paramName="element-type" expandClassName="true"/>"
-           </XDtField:ifHasFieldTag>
+              <XDtField:ifHasFieldTag tagName="jdo.field" 
paramName="element-type">
+                         element-type="<XDtField:fieldTagValue 
tagName="jdo.field" paramName="element-type" expandClassName="true"/>"
+              </XDtField:ifHasFieldTag>
+             <XDtField:ifHasFieldTag tagName="jdo.field" 
paramName="dependent-element">
+                        dependent-element="<XDtField:fieldTagValue 
tagName="jdo.field" paramName="dependent-element" values="true,false" 
default="false"/>"
+             </XDtField:ifHasFieldTag>
            <XDtField:ifHasFieldTag tagName="jdo.field" 
paramName="embedded-element" values="true,false">
                       embedded-element="<XDtField:fieldTagValue 
tagName="jdo.field" paramName="embedded-element" values="true,false" 
default="true"/>"
            </XDtField:ifHasFieldTag>

Reply via email to