Hi,

did you tried set auto-update="true"?
in
<reference-descriptor name="address1"
      class-ref="com.bowtech.ojb.domainmodel.om.AddressVO"
      auto-retrieve="true"
      auto-update="true"
>
        <foreignkey field-ref="id"/>
 </reference-descriptor>

regards,
Armin

----- Original Message -----
From: <[EMAIL PROTECTED]>
To: "OJB Users List" <[EMAIL PROTECTED]>
Sent: Saturday, August 09, 2003 1:05 AM
Subject: Broker.store(x) issue


> Have an issue when storing an object where the main object is stored
but
> referenced object isn't.  No error is shown.
>
> All information is passed from the form fine.(is in a struts app)
>
> With the following I would expect that the id of an AddressVO
address_vo
> would be stored in field address1 of MemberVO vo.
>
> What am I missing??
>
> DB = MySQL
>
>
>
> public ActionForward execute(ActionMapping mapping, ActionForm form,
>                                  HttpServletRequest request,
> HttpServletResponse response) {
>
>         DynaValidatorForm _form = (DynaValidatorForm)form;
>         MemberVO vo = new MemberVO();
>         AddressVO address_vo = new AddressVO();
>
>         vo.setMemberNum((String)_form.get("memberNum"));
>         vo.setFirstName((String)_form.get("firstName"));
>         vo.setLastName((String)_form.get("lastName"));
>         vo.setSuffix((String)_form.get("suffix"));
>         // etc....
>
>         address_vo.setAddress1((String)_form.get("address1"));
>         address_vo.setAddress2((String)_form.get("address2"));
>         address_vo.setCity((String)_form.get("city"));
>
>
address_vo.setCountryId(Integer.parseInt(_form.get("countryId").toString
()))
> ;
>         file://etc...
>
>         vo.setAddress1(address_vo);
>
>         file://insert member into DB
>         PersistenceBroker broker = null;
>         broker = PersistenceBrokerFactory.defaultPersistenceBroker();
>
>
>         broker.beginTransaction();
>         broker.store(vo);
> // if I add line broker.store(address_vo) it is stored fine.
>         broker.commitTransaction();
>
>         return mapping.findForward("success");
>     }
> --------------------------------------------------------------
> <class-descriptor class="com.bowtech.ojb.domainmodel.om.MemberVO"
> table="MEMBERS">
>
>     <field-descriptor name="id" column="id" jdbc-type="INTEGER"
> primarykey="true" autoincrement="true"/>
>
>     <field-descriptor name="memberNum" column="memberNum"
> jdbc-type="VARCHAR"/>
>
>     <field-descriptor name="firstName" column="firstName"
> jdbc-type="VARCHAR"/>
>
>     <field-descriptor name="lastName" column="lastName"
> jdbc-type="VARCHAR"/>
>
>     <field-descriptor name="suffix" column="suffix"
jdbc-type="VARCHAR"/>
>
> <!-- etc....  -->
>
>     <reference-descriptor name="address1"
> class-ref="com.bowtech.ojb.domainmodel.om.AddressVO"
auto-retrieve="true">
>
>         <foreignkey field-ref="id"/>
>
>     </reference-descriptor>
>
> </class-descriptor>
>
> <class-descriptor class="com.bowtech.ojb.domainmodel.om.AddressVO"
> table="ADDRESSES">
>
>     <field-descriptor name="id" column="id" jdbc-type="INTEGER"
> primarykey="true" autoincrement="true"/>
>
>     <field-descriptor name="address1" column="address1"
> jdbc-type="VARCHAR"/>
>
>     <field-descriptor name="address2" column="address2"
> jdbc-type="VARCHAR"/>
>
>     <field-descriptor name="city" column="city" jdbc-type="VARCHAR"/>
>
>     <field-descriptor name="stateId" column="stateId"
jdbc-type="INTEGER"/>
>
>     <field-descriptor name="countryId" column="countryId"
> jdbc-type="INTEGER"/>
>
>
>
> <!-- etc....  --->
>
> </class-descriptor>
>
>
> Thanks
>
> Ross Rotherham
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to