Hello

I have sorted out the issue below, however I have encountered another problem,

Data already exists

integrity constraint violation: NOT NULL check constraint; SYS_CT_10102 table: 
"ShoppingBasketItem" column: "shoppingBasket_id_OID"

This is the log output and am not sure why shoppingBasket_id_OID is NULL

     [exec] 16:58:55,845  [Native               qtp1742392524-31 DEBUG]  INSERT 
INTO "ShoppingBasketItem" 
("cardNumber","location","description","amount","shoppingBasket_id_OID","version","shoppingBasketItem_id_OID")
 VALUES (<'123456789001'>,<'Please_Select'>,<'Item 1'>,<'▒5'>,<null>,<1>,<null>)
     [exec] 16:58:55,845  [Persist              qtp1742392524-31 WARN ]  Insert 
of object "org.atos.tfgm.basket.ShoppingBasketItem@4e50079b" using statement 
"INSERT INTO "ShoppingBasketItem" 
("cardNumber","location","description","amount","shoppingBasket_id_OID","version","shoppingBasketItem_id_OID")
 VALUES (?,?,?,?,?,?,?)" failed : integrity constraint violation: NOT NULL 
check constraint; SYS_CT_10102 table: "ShoppingBasketItem" column: 
"shoppingBasket_id_OID"
     [exec] 16:58:55,845  [Persist              qtp1742392524-31 WARN ]  Insert 
of object "org.atos.tfgm.basket.ShoppingBasketItem@4e50079b" using statement 
"INSERT INTO "ShoppingBasketItem" 
("cardNumber","location","description","amount","shoppingBasket_id_OID","version","shoppingBasketItem_id_OID")
 VALUES (?,?,?,?,?,?,?)" failed : integrity constraint violation: NOT NULL 
check constraint; SYS_CT_10102 table: "ShoppingBasketItem" column: 
"shoppingBasket_id_OID"
     [exec] 16:58:55,845  [Persist              qtp1742392524-31 WARN ]  Insert 
of object "org.atos.tfgm.basket.ShoppingBasketItem@4e50079b" using statement 
"INSERT INTO "ShoppingBasketItem" 
("cardNumber","location","description","amount","shoppingBasket_id_OID","version","shoppingBasketItem_id_OID")
 VALUES (?,?,?,?,?,?,?)" failed : integrity constraint violation: NOT NULL 
check constraint; SYS_CT_10102 table: "ShoppingBasketItem" column: 
"shoppingBasket_id_OID"
     [exec] 16:58:55,945  [IsisTransaction      qtp1742392524-31 INFO ]  abort 
transaction IsisTransaction@2fab0086[state=MUST_ABORT,commands=0]

Regards
Dharmesh

-----Original Message-----
From: Chohan, Dharmesh [mailto:[email protected]] 
Sent: Monday, January 13, 2014 4:09 PM
To: [email protected]
Subject: Domain Mappings 1:m Exception

Hi

I am implementing a domain object mapping of 1 to many.  I have followed the 
documentation on 
http://isis.apache.org/components/objectstores/jdo/managed-1-to-m-relationships.html

This is what I have implemented,

@javax.jdo.annotations.Persistent(mappedBy="shoppingBasket")
        private SortedSet<ShoppingBasketItem> shoppingBasketItem = new 
TreeSet<ShoppingBasketItem>();

        @javax.jdo.annotations.Column(allowsNull="false")
    @MemberOrder(sequence = "3")
        public SortedSet <ShoppingBasketItem> getShoppingBasketItem() {
                return shoppingBasketItem;
        }

        public void setShoppingBasketItem(SortedSet <ShoppingBasketItem> 
shoppingBasketItem) {
                this.shoppingBasketItem = shoppingBasketItem;
        }

public class ShoppingBasketItem implements Comparable<ShoppingBasketItem> {

        private ShoppingBasket shoppingBasket;

        @javax.jdo.annotations.Column(allowsNull="false")
        public ShoppingBasket getShoppingBasket() {
                return shoppingBasket;
        }

        public void setShoppingBasket(ShoppingBasket shoppingBasket) {
                this.shoppingBasket = shoppingBasket;
        }

...

When I run ISIS and test the screen, I am getting the following exception,

*       java.lang.IllegalArgumentException
*       No such method ' getShoppingBasketItem' or 'isShoppingBasketItem'
*       org.apache.isis.applib.util.Clause#getValueOf(ObjectContracts.java:204)
*       
org.apache.isis.applib.util.ObjectContracts#compare(ObjectContracts.java:45)
*       
org.atos.tfgm.basket.ShoppingBasketItem#compareTo(ShoppingBasketItem.java:117)
*       
org.atos.tfgm.basket.ShoppingBasketItem#compareTo(ShoppingBasketItem.java:15)
*       java.util.TreeMap#put(TreeMap.java:545)
*       java.util.TreeSet#add(TreeSet.java:238)
*       org.atos.tfgm.basket.ShoppingBaskets#getBasket(ShoppingBaskets.java:150)
*       
sun.reflect.NativeMethodAccessorImpl#invoke0(NativeMethodAccessorImpl.java:-2)
*       
sun.reflect.NativeMethodAccessorImpl#invoke(NativeMethodAccessorImpl.java:39)
*       
sun.reflect.DelegatingMethodAccessorImpl#invoke(DelegatingMethodAccessorImpl.java:25)
*       java.lang.reflect.Method#invoke(Method.java:597)


Have I implemented the relationship incorrectly or missing something.


Regards
Dharmesh

Reply via email to