0

Hi I am not able to update msgFromUserFlag in database through hibernate. Neither i am getting any error while updating this value.

This is my code at DAO layer. and in database my field is of TINYINT(1) type and in persistence class it is of type boolean.

public void updateMsgFromUserFlag(CustomerOrder customerOrderEntity){
    try {

        //update(customerOrderEntity);
        final StringBuffer queryString = new StringBuffer("update CustomerOrder custOrder set custOrder.msgFromUserFlag = :param1 where custOrder.goldOrderNumber = :param2");
        final Query query = this.getEm().createQuery(queryString.toString());
        query.setParameter("param1",customerOrderEntity.isMsgFromUserFlag());
        query.setParameter("param2", customerOrderEntity.getGoldOrderNumber());
        int modification=query.executeUpdate();
    }
    catch(PersistenceException ex) {
        otLogger.debug("OrderDaoImpl.exception occurred "+ex);
        throw new TechnicalException(Constants.ERROR_HIBERNATE_EXCEPTION, ex);
    }
}
Guillaume
  • 10,463
  • 1
  • 33
  • 47

1 Answers1

0

I think your property is something like

private boolean msgFromUserFlag=false;

and the getters and setters were produced by eclipse itself, which will generate them like

public boolean isMsgFromUserFlag() {
    return msgFromUserFlag;
}

public void setMsgFromUserFlag(boolean msgFromUserFlag) {
    this.msgFromUserFlag = msgFromUserFlag;
}

You can try changing the getter to getMsgFromUserFlag(), because wrong getter methods sometimes causes Mapping Exception while publishing the project.

Arun Sudhakaran
  • 2,167
  • 4
  • 27
  • 52