1 Reply Latest reply on Jan 27, 2004 6:49 AM by juha

    CMR One to One relationship 3.2.3

    cbuckley

      Hello,

      I have a one to one relationship that works fine in 3.2.1 and deploys fine in 3.2.3, but when I try to access the cmr field in 3.2.3 Jboss throws null pointer exception (basically the cmr field is not being created)

      ejb-jar.xml: Relationship definition

      <ejb-relation>
      <ejb-relation-name>Interface-Object</ejb-relation-name>
      <ejb-relationship-role>
      <ejb-relationship-role-name>interface-has-a-object</ejb-relationship-role-name>
      One
      <relationship-role-source>
      <ejb-name>OvInterfacesBean</ejb-name>
      </relationship-role-source>
      <cmr-field>
      <cmr-field-name>ovObjects</cmr-field-name>
      </cmr-field>
      </ejb-relationship-role>

      <ejb-relationship-role>
      <ejb-relationship-role-name>object-for-a-interface</ejb-relationship-role-name>
      One
      <relationship-role-source>
      <ejb-name>OvObjectsBean</ejb-name>
      </relationship-role-source>
      </ejb-relationship-role>
      </ejb-relation>


      and

      jbosscmp-jdbc.xml: Relationship definition


      <ejb-relation>
      <ejb-relation-name>Interface-Object</ejb-relation-name>
      <foreign-key-mapping/>

      <ejb-relationship-role>
      <ejb-relationship-role-name>interface-has-a-object</ejb-relationship-role-name>
      <key-fields>
      <key-field>
      <field-name>topoId</field-name>
      <column-name>TOPO_ID</column-name>
      </key-field>

      </key-fields>
      </ejb-relationship-role>

      <ejb-relationship-role>
      <ejb-relationship-role-name>object-for-a-interface</ejb-relationship-role-name>
      <key-fields/>
      </ejb-relationship-role>
      </ejb-relation>


      My OvInterfaces Local Interface (EJBLocalObject) has a "OvObjects getOvObjects()." I access this bean via a session bean that looks up the bean and I have a method that creates an OvInterface (and thus should create a OvObjects also) when I do a

      OvObjects ovObject = ovInterface.getOvObjects();
      ovObject.getIpStatus(); (this throws a null pointer, i.e. the OvObjects isn't created).

      Any guidance? thanks in advance.