[jboss-user] [Persistence, JBoss/CMP, Hibernate, Database] - Manually having flush session
smithbstl
do-not-reply at jboss.com
Fri Jul 28 11:36:19 EDT 2006
I am working with JBOSS 4.0.4GA and Hibernate 3.1.3
I am attempting to manipulate a record in Oracle. For some reason, I am having to manually flush the session to get the changes to show up in the database. From the documentation I have read, I should not have to flush the session as long as I call commit() on the transaction.
I am using Hibernate as a MBean Service in JBOSS with har deployment.
Here is my code
public void delete(int acctId){
| Session session = null;
| Transaction tx = null;
| try {
| session = ServiceLocator.getHibernateSession(HIBERNATE_SESSION_FACTORY);
| tx = session.beginTransaction();
| AccountBean acctBean = (AccountBean) session.get(AccountBean.class,acctId);
| //For debugging
| if (acctBean == null) {
| System.out.println("AccountBean = Null");
| } else {
| System.out.println("AccountDelete");
| System.out.println("-AcctID = " + acctBean.getAcctId());
| System.out.println("-AcctNum = " + acctBean.getAcctNum());
| System.out.println("-AcctName = " + acctBean.getAcctName());
| }
| session.delete(acctBean);
| tx.commit();
| } catch (Exception e) {
| try {
| tx.rollback();
| } catch (Exception e2) {
| System.out.println(e2);
| }
| System.out.println(e);
| } finally {
| try {
| if (session != null) {
| //Why do I need to call flush here?
| session.flush();
| session.close();
| }
| } catch (Exception e) {
| System.out.println(e);
| }
| }
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3961592#3961592
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3961592
More information about the jboss-user
mailing list