<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "http://java.sun.com/dtd/ejb-jar_2_0.dtd">

<ejb-jar >

   <description><![CDATA[No Description.]]></description>
   <display-name>Generated by XDoclet</display-name>

   <enterprise-beans>

      <!-- Session Beans -->
      <session >
         <description><![CDATA[]]></description>

         <ejb-name>Facade</ejb-name>

         <home>org.jboss.test.cmp2.cmrtree.ejb.FacadeHome</home>
         <remote>org.jboss.test.cmp2.cmrtree.ejb.Facade</remote>
         <ejb-class>org.jboss.test.cmp2.cmrtree.ejb.FacadeSessionBean</ejb-class>
         <session-type>Stateless</session-type>
         <transaction-type>Container</transaction-type>

      </session>

         <session>
         <description>JUnit Session Bean Test Runner</description>
         <ejb-name>EJBTestRunnerEJB</ejb-name>
         <home>org.jboss.test.util.ejb.EJBTestRunnerHome</home>
         <remote>org.jboss.test.util.ejb.EJBTestRunner</remote>
         <ejb-class>org.jboss.test.util.ejb.EJBTestRunnerBean</ejb-class>
         <session-type>Stateless</session-type>
         <transaction-type>Bean</transaction-type>
      </session>

      <!-- Entity Beans -->
      <entity >
         <description><![CDATA[]]></description>

         <ejb-name>B</ejb-name>

         <local-home>org.jboss.test.cmp2.cmrtree.ejb.BLocalHome</local-home>
         <local>org.jboss.test.cmp2.cmrtree.ejb.BLocal</local>

         <ejb-class>org.jboss.test.cmp2.cmrtree.ejb.BBean</ejb-class>
         <persistence-type>Container</persistence-type>
         <prim-key-class>org.jboss.test.cmp2.cmrtree.ejb.BPK</prim-key-class>
         <reentrant>false</reentrant>
         <cmp-version>2.x</cmp-version>
         <abstract-schema-name>B</abstract-schema-name>
         <cmp-field >
            <description><![CDATA[]]></description>
            <field-name>majorId</field-name>
         </cmp-field>
         <cmp-field >
            <description><![CDATA[]]></description>
            <field-name>minorId</field-name>
         </cmp-field>
         <cmp-field >
            <description><![CDATA[]]></description>
            <field-name>name</field-name>
         </cmp-field>
         <cmp-field >
            <description><![CDATA[]]></description>
            <field-name>AMinorId</field-name>
         </cmp-field>
         <cmp-field >
            <description><![CDATA[]]></description>
            <field-name>parentBMinorId</field-name>
         </cmp-field>

	  <!-- Write a file named ejb-finders-BBean.xml if you want to define extra finders. -->
      </entity>

      <entity >
         <description><![CDATA[]]></description>

         <ejb-name>A</ejb-name>

         <local-home>org.jboss.test.cmp2.cmrtree.ejb.ALocalHome</local-home>
         <local>org.jboss.test.cmp2.cmrtree.ejb.ALocal</local>

         <ejb-class>org.jboss.test.cmp2.cmrtree.ejb.ABean</ejb-class>
         <persistence-type>Container</persistence-type>
         <prim-key-class>org.jboss.test.cmp2.cmrtree.ejb.APK</prim-key-class>
         <reentrant>false</reentrant>
         <cmp-version>2.x</cmp-version>
         <abstract-schema-name>A</abstract-schema-name>
         <cmp-field >
            <description><![CDATA[]]></description>
            <field-name>majorId</field-name>
         </cmp-field>
         <cmp-field >
            <description><![CDATA[]]></description>
            <field-name>minorId</field-name>
         </cmp-field>
         <cmp-field >
            <description><![CDATA[]]></description>
            <field-name>name</field-name>
         </cmp-field>

	  <!-- Write a file named ejb-finders-ABean.xml if you want to define extra finders. -->
      </entity>

     <!--
       To add entity beans that you have deployment descriptor info for, add
       a file to your XDoclet merge directory called entity-beans.xml that contains
       the <entity></entity> markup for those beans.
     -->

      <!-- Message Driven Beans -->
     <!--
       To add message driven beans that you have deployment descriptor info for, add
       a file to your XDoclet merge directory called message-driven-beans.xml that contains
       the <message-driven></message-driven> markup for those beans.
     -->

   </enterprise-beans>

   <!-- Relationships -->
   <relationships >
      <ejb-relation >
         <ejb-relation-name>B-Children</ejb-relation-name>

         <ejb-relationship-role >
            <ejb-relationship-role-name>child-has-Parent</ejb-relationship-role-name>
            <multiplicity>Many</multiplicity>
            <cascade-delete/>
            <relationship-role-source >
               <ejb-name>B</ejb-name>
            </relationship-role-source>
            <cmr-field >
               <cmr-field-name>parent</cmr-field-name>
            </cmr-field>
         </ejb-relationship-role>

         <ejb-relationship-role >
            <ejb-relationship-role-name>B-has-children</ejb-relationship-role-name>
            <multiplicity>One</multiplicity>
            <relationship-role-source >
               <ejb-name>B</ejb-name>
            </relationship-role-source>
            <cmr-field >
               <cmr-field-name>children</cmr-field-name>
               <cmr-field-type>java.util.Collection</cmr-field-type>
            </cmr-field>
         </ejb-relationship-role>

      </ejb-relation>
      <ejb-relation >
         <ejb-relation-name>A-B</ejb-relation-name>

         <ejb-relationship-role >
            <ejb-relationship-role-name>B-has-A</ejb-relationship-role-name>
            <multiplicity>Many</multiplicity>
            <cascade-delete/>
            <relationship-role-source >
               <ejb-name>B</ejb-name>
            </relationship-role-source>
            <cmr-field >
               <cmr-field-name>a</cmr-field-name>
            </cmr-field>
         </ejb-relationship-role>

         <ejb-relationship-role >
            <ejb-relationship-role-name>A-has-B</ejb-relationship-role-name>
            <multiplicity>One</multiplicity>
            <relationship-role-source >
               <ejb-name>A</ejb-name>
            </relationship-role-source>
            <cmr-field >
               <cmr-field-name>b</cmr-field-name>
               <cmr-field-type>java.util.Collection</cmr-field-type>
            </cmr-field>
         </ejb-relationship-role>

      </ejb-relation>
   </relationships>

   <!-- Assembly Descriptor -->
   <assembly-descriptor >
     <!--
       To add additional assembly descriptor info here, add a file to your
       XDoclet merge directory called assembly-descriptor.xml that contains
       the <assembly-descriptor></assembly-descriptor> markup.
     -->

   <!-- finder permissions -->

   <!-- finder permissions -->

   <!-- finder permissions -->

   <!-- transactions -->
   <container-transaction >
      <method >
         <ejb-name>B</ejb-name>
          <method-name>*</method-name>
       </method>
       <trans-attribute>Required</trans-attribute>
    </container-transaction>
   <container-transaction >
      <method >
         <ejb-name>A</ejb-name>
          <method-name>*</method-name>
       </method>
       <trans-attribute>Required</trans-attribute>
    </container-transaction>
   <container-transaction >
      <method >
         <ejb-name>Facade</ejb-name>
          <method-name>*</method-name>
       </method>
       <trans-attribute>Required</trans-attribute>
    </container-transaction>
   <container-transaction >
      <method >
         <ejb-name>Facade</ejb-name>
         <method-intf>Remote</method-intf>
         <method-name>setup</method-name>
         <method-params>
         </method-params>
      </method>
      <trans-attribute>RequiresNew</trans-attribute>
   </container-transaction>
   <container-transaction >
      <method >
         <ejb-name>Facade</ejb-name>
         <method-intf>Remote</method-intf>
         <method-name>test</method-name>
         <method-params>
            <method-param>long</method-param>
         </method-params>
      </method>
      <trans-attribute>RequiresNew</trans-attribute>
   </container-transaction>
   <container-transaction >
      <method >
         <ejb-name>Facade</ejb-name>
         <method-intf>Remote</method-intf>
         <method-name>tearDown</method-name>
         <method-params>
         </method-params>
      </method>
      <trans-attribute>RequiresNew</trans-attribute>
   </container-transaction>
   <container-transaction >
      <method >
         <ejb-name>Facade</ejb-name>
         <method-intf>Remote</method-intf>
         <method-name>setup2</method-name>
         <method-params>
         </method-params>
      </method>
      <trans-attribute>RequiresNew</trans-attribute>
   </container-transaction>
   <container-transaction >
      <method >
         <ejb-name>Facade</ejb-name>
         <method-intf>Remote</method-intf>
         <method-name>setBNameToNull</method-name>
         <method-params>
         </method-params>
      </method>
      <trans-attribute>RequiresNew</trans-attribute>
   </container-transaction>
   <container-transaction >
      <method >
         <ejb-name>Facade</ejb-name>
         <method-intf>Remote</method-intf>
         <method-name>getBName</method-name>
         <method-params>
         </method-params>
      </method>
      <trans-attribute>RequiresNew</trans-attribute>
   </container-transaction>

   <!-- finder transactions -->
   </assembly-descriptor>

</ejb-jar>
