Hi there,
I'm new to EJB3 and not sure if the behavior is correct or not.

I have a stateless session bean that searches for an Entity bean and returns 
the found object to the client:

FIRST SESSION BEAN
  | 
  | public DestructionBin findDestructionBin(long id) {
  |     return manager.find(DestructionBin.class, id);
  | }
  | 

The client is a struts application. The returned entity is assigned to an 
ActionForm and is then changed on a webpage. Once the form is submitted I get 
this modified entity and call an update method on another stateless session 
bean.

STRUTS ACTION PROCESSING...
  | 
  | public ActionForward saveData(ActionMapping mapping, ActionForm form,
  |                     HttpServletRequest request, HttpServletResponse 
response) {
  |     EditBinForm formObj = (EditBinForm) form;
  | 
  |     try {
  |             ManageDestructionBin mngBins = (ManageDestructionBin) 
GeneralWebUtil.getJNDIObject(ManageDestructionBinBean.JNDILocal, 
ManageDestructionBin.class);
  | 
  |             if (formObj.getId() > 0)
  |                     mngBins.updateDestructionBin(formObj.getBin(), formObj
  |                                             .getWarehouse());
  | ...
  | 
  | SECOND SESSION BEAN
  | 
  | public boolean updateDestructionBin(DestructionBin bin, long warehouse)
  |                     throws WarehouseException {
  |     try {
  |             Warehouse wh = mngWarehouse.findWarehouse(warehouse);
  |             bin.setWarehouse(wh);
  |             manager.merge(bin);
  |     } catch (Exception e) {
  |             throw new WarehouseException(e.getMessage());
  |     }
  | 
  |     return true;
  | }
  | 

However, when the merge is called.. this is the stacktrace I get from EJB 
server:


  | 09:43:51,941 WARN  [JDBCExceptionReporter] SQL Error: 0, SQLState: null
  | 09:43:51,941 ERROR [JDBCExceptionReporter] Batch entry 0 update 
TBL_DESTRUCTION_BIN set LASTUPDATE_=2007-05-16 09:43:51.809000 +1000, 
STATUS_=NULL, CLIENTREF_=VIC71234560, ACCESSCOUNT_=0, CREATEDBY_=NULL, 
BARCODE_=NULL, CREATEDATE_=NULL, LASTACCESSED_=NULL, PRINTED_=0, TYPE_=ST, 
SIZE_=1L, WAREHOUSE_=2, DEPARTMENT_=NULL, BUSINESSDAY_=0, COLLECTIONDATE_=NULL, 
DELIVERYDATE_=NULL, ROTATIONSCHEDULE_=NULL where ID_=4 was aborted.  Call 
getNextException to see the cause.
  | 09:43:51,942 WARN  [JDBCExceptionReporter] SQL Error: 0, SQLState: 23502
  | 09:43:51,942 ERROR [JDBCExceptionReporter] ERROR: null value in column 
"status_" violates not-null constraint
  | 09:43:51,942 ERROR [AbstractFlushingEventListener] Could not synchronize 
database state with session
  | org.hibernate.exception.ConstraintViolationException: Could not execute 
JDBC batch update
  | 

Could anyone please tell me if this is the correct behavior? It's quite 
annoying to find the object again and just change the updated fields..  and I 
also don't think this is the solution for it ehehehehe

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4045992#4045992

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4045992
_______________________________________________
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to