dain        2004/10/14 21:49:08

  Added:       modules/core/src/test-cmp/onetomany/simplepk ejb-jar.xml
                        openejb-jar.xml
  Log:

  Committed Gianny's massive patch:
      http://jira.codehaus.org/browse/OPENEJB-13
  
  This adds support for the following:
   * CMP sql mapping
   * CMR support
   * Compound primary key
   * Unknown primary key
  
  There are still a few weirdisms...
   * Full sql mapping is now required
   * SQL is now compiled against physical schema names instead of logical schema names
  
  Revision  Changes    Path
  1.1                  openejb/modules/core/src/test-cmp/onetomany/simplepk/ejb-jar.xml
  
  Index: ejb-jar.xml
  ===================================================================
  <?xml version="1.0" encoding="US-ASCII"?>
  
  <ejb-jar xmlns="http://java.sun.com/xml/ns/j2ee";
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
              xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
                  http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd";
              version="2.1">
  
      <enterprise-beans>
          <entity>
              <ejb-name>A</ejb-name>
              <local-home>org.openejb.entity.cmp.cmr.onetomany.ALocalHome</local-home>
              <local>org.openejb.entity.cmp.cmr.onetomany.ALocal</local>
              <ejb-class>org.openejb.entity.cmp.cmr.onetomany.ABean</ejb-class>
              <persistence-type>Container</persistence-type>
              <prim-key-class>java.lang.Integer</prim-key-class>
              <cmp-version>2.x</cmp-version>
              <abstract-schema-name>onetomanyA</abstract-schema-name>
              <cmp-field>
                  <field-name>field1</field-name>
              </cmp-field>
              <cmp-field>
                  <field-name>field2</field-name>
              </cmp-field>
              <primkey-field>field1</primkey-field>
          </entity>
          <entity>
              <ejb-name>B</ejb-name>
              <local-home>org.openejb.entity.cmp.cmr.onetomany.BLocalHome</local-home>
              <local>org.openejb.entity.cmp.cmr.onetomany.BLocal</local>
              <ejb-class>org.openejb.entity.cmp.cmr.onetomany.BBean</ejb-class>
              <persistence-type>Container</persistence-type>
              <prim-key-class>java.lang.Integer</prim-key-class>
              <cmp-version>2.x</cmp-version>
              <abstract-schema-name>onetomanyB</abstract-schema-name>
              <cmp-field>
                  <field-name>field1</field-name>
              </cmp-field>
              <cmp-field>
                  <field-name>field2</field-name>
              </cmp-field>
              <primkey-field>field1</primkey-field>
          </entity>
      </enterprise-beans>
      <relationships>
          <ejb-relation>
              <ejb-relation-name>relation</ejb-relation-name>
              <ejb-relationship-role>
                  <ejb-relationship-role-name>ASide</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>
              </ejb-relationship-role>
              <ejb-relationship-role>
                  <ejb-relationship-role-name>BSide</ejb-relationship-role-name>
                  <multiplicity>Many</multiplicity>
                  <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-relation>
      </relationships>
      <assembly-descriptor>
          <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>B</ejb-name>
                  <method-name>*</method-name>
              </method>
              <trans-attribute>Required</trans-attribute>
          </container-transaction>
      </assembly-descriptor>
  
  </ejb-jar>
  
  
  
  1.1                  
openejb/modules/core/src/test-cmp/onetomany/simplepk/openejb-jar.xml
  
  Index: openejb-jar.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <openejb-jar
      xmlns="http://www.openejb.org/xml/ns/openejb-jar";
      configId="org/openejb/deployment/test"
      parentId="org/apache/geronimo/Server">
  
      <cmp-connection-factory>DefaultDatasource</cmp-connection-factory>
      <transaction-manager></transaction-manager>
  
      <enterprise-beans>
          <entity>
              <ejb-name>A</ejb-name>
              <table-name>A</table-name>
              <cmp-field-mapping>
                  <cmp-field-name>field1</cmp-field-name>
                  <table-column>a1</table-column>
              </cmp-field-mapping>
              <cmp-field-mapping>
                  <cmp-field-name>field2</cmp-field-name>
                  <table-column>a2</table-column>
              </cmp-field-mapping>
          </entity>
          <entity>
              <ejb-name>B</ejb-name>
              <table-name>B</table-name>
              <cmp-field-mapping>
                  <cmp-field-name>field1</cmp-field-name>
                  <table-column>b1</table-column>
              </cmp-field-mapping>
              <cmp-field-mapping>
                  <cmp-field-name>field2</cmp-field-name>
                  <table-column>b2</table-column>
              </cmp-field-mapping>
          </entity>
      </enterprise-beans>
  
      <relationships>
          <ejb-relation>
              <ejb-relation-name>relation</ejb-relation-name>
              <ejb-relationship-role>
                  <ejb-relationship-role-name>ASide</ejb-relationship-role-name>
                  <role-mapping>
                      <cmr-field-mapping>
                          <key-column>a1</key-column>
                          <foreign-key-column>fka1</foreign-key-column>
                      </cmr-field-mapping>
                  </role-mapping>
              </ejb-relationship-role>
          </ejb-relation>    
      </relationships>
      
  </openejb-jar>
  
  

Reply via email to