Hi,
 
I would like to know whether Castor can marshal/unmarshal objects which are connected through a bidirectional aggregation relationship. Consider these two classes:
 
public class Order {
   
    java.util.Set items; // Items of these order
   
    public void setItems (Set items)
    {
        this.items = items;
    }
 
    public Set getItems()
    {
        return items;
    }
}
 
public class Item {
 
    Order order; // The order this item belongs to
 
    public void setOrder (Order order)
    {
        this.order = order;
    }
 
    public Order getOrder()
    {
        return order;
    }
}
 
My mapping file looks like this:
 
<mapping>
    <class name="Order" auto-complete="true">
        <field name="items" type="Item" collection="set">
        </field>
    </class>
 
    <class name="Item" auto-complete="true">
        <field name="order" type="Order">
        </field>
    </class>
</mapping>
 
The following test case fails with "Process exited with code 128":
 
Order ord = new Order();
 
Item item1 = new Item();
Item item2 = new Item();
 
Set items = new HashSet();
 
items.add(item1);
items.add(item2);
 
ord.setItems(items);
 
item1.setOrder(ord);
item2.setOrder(ord);
 
Mapping mapping = new Mapping();
mapping.loadMapping("castor-mapping.xml");
 
FileWriter writer = new FileWriter("order.xml");
 
Marshaller marshaller = new Marshaller(writer);
marshaller.setMapping(mapping);
 
marshaller.marshal(ord);
 
 
Any ideas what the problem is?
 
Regards,
 
Vahan Harput
 
 
 
----------------------------------------------------------- 
If you wish to unsubscribe from this mailing, send mail to
[EMAIL PROTECTED] with a subject of:
        unsubscribe castor-user

Reply via email to