org.zkoss.zkplus.jpa
Class OpenEntityManagerInViewListener

java.lang.Object
  extended by org.zkoss.zkplus.jpa.OpenEntityManagerInViewListener
All Implemented Interfaces:
org.zkoss.zk.ui.util.ExecutionCleanup, org.zkoss.zk.ui.util.ExecutionInit

public class OpenEntityManagerInViewListener
extends Object
implements org.zkoss.zk.ui.util.ExecutionCleanup, org.zkoss.zk.ui.util.ExecutionInit

Listener to init and cleanup the JPA entityManager automatically

In WEB-INF/zk.xml, add following lines:


        <listener>
                <description>Hibernate "OpenEntityManagerInView" Listener</description>
                <listener-class>org.zkoss.zkplus.jpa.OpenEntityManagerInViewListener</listener-class>
        </listener>
 

Applicable to EJB version 3.2.ga or later

Since:
3.0.2
Author:
Jeff

Constructor Summary
OpenEntityManagerInViewListener()
           
 
Method Summary
 void cleanup(org.zkoss.zk.ui.Execution exec, org.zkoss.zk.ui.Execution parent, List errs)
           
protected  void handleException(org.zkoss.zk.ui.Execution exec, Throwable ex)
          Default exception handler.
 void init(org.zkoss.zk.ui.Execution exec, org.zkoss.zk.ui.Execution parent)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OpenEntityManagerInViewListener

public OpenEntityManagerInViewListener()
Method Detail

cleanup

public void cleanup(org.zkoss.zk.ui.Execution exec,
                    org.zkoss.zk.ui.Execution parent,
                    List errs)
             throws Exception
Specified by:
cleanup in interface org.zkoss.zk.ui.util.ExecutionCleanup
Throws:
Exception

init

public void init(org.zkoss.zk.ui.Execution exec,
                 org.zkoss.zk.ui.Execution parent)
          throws Exception
Specified by:
init in interface org.zkoss.zk.ui.util.ExecutionInit
Throws:
Exception

handleException

protected void handleException(org.zkoss.zk.ui.Execution exec,
                               Throwable ex)

Default exception handler. This implementation simply rollback the transaction.

Application developer might want to extends this class and override this method to do other things like compensate for any permanent changes during the conversation, and finally restart business conversation... what can be done here depends on the applications design.

Parameters:
exec - the execution to clean up.
ex - the Throwable which is not handled during the execution


Copyright © 2014. All rights reserved.