cmp 2.0关系的问题。被删除过的,再发 。
z3h 2002-12-03 02:39:15 CmpSellmeal
和CmpMeals 是多对一关系
CmpSellmeal主键(stufferid,orderdate,timeid)
CmpSellmeal其他字段mealsid.
CmpMeals 主键(orderdate,timeid,id)
CmpSellmeal 通过 orderdate -- orderdate,timeid-timeid,mealsid-CmpMeals.id关联,
CmpSellMeal 的create 方法
public CmpSellmealPK ejbCreate(Long stufferId, java.sql.Date orderDate, Integer mealSellTimeID, CmpMeals meals, Integer amount, String ineffect) throws CreateException {
setStufferId ( stufferId );
setOrderDate(orderDate);
setMealSellTimeID(mealSellTimeID);
return new CmpSellmealPK( stufferId,orderDate,mealSellTimeID);
}
public void ejbPostCreate(Long stufferId, java.sql.Date orderDate, Integer mealSellTimeID, CmpMeals meals, Integer amount, String ineffect) throws CreateException {
setCmpMeals(meals);
}
编译正常,运行出现下面异常。
[2002-12-3 11:4:39] Debeg Info:
javax.ejb.TransactionRolledbackLocalException: EJB Exception:
- with nested exception:
[javax.ejb.EJBException: The setXXX method for a cmr-field that is mapped to a primary key may not be called. The cmr-field is read-only.]
at weblogic.ejb20.internal.EJBRuntimeUtils.throwTransactionRolledbackLocal(EJBRuntimeUtils.java:235)
at weblogic.ejb20.internal.BaseEJBLocalHome.handleSystemException(BaseEJBLocalHome.java:222)
at weblogic.ejb20.internal.EntityEJBLocalHome.create(EntityEJBLocalHome.java:178)
at com.dareway.meal.mealejb.CmpSellmealBean_a30qjf_LocalHomeImpl.create(CmpSellmealBean_a30qjf_LocalHomeImpl.java:159)
at com.dareway.meal.mealejb.SesPubBean.addSellMeal(SesPubBean.java:181)
at com.dareway.meal.mealejb.SesPubBean_u4r1ms_EOImpl.addSellMeal(SesPubBean_u4r1ms_EOImpl.java:795)
at com.dareway.meal.mealejb.SesPubBean_u4r1ms_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:166)
at weblogic.rmi.internal.ServerRequest.sendOneWayRaw(ServerRequest.java:92)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:112)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:262)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:229)
at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:35)
at $Proxy95.addSellMeal(Unknown Source)