1. Creamos otro Module, con las mismas características que nuestro Module, que lo único que hará será en su implementación extender de la clase ApplicationModuleImpl para sobreescribir los métodos que queremos, en este caso el prepareSession.
public class CustomCommonModuleImpl extends ApplicationModuleImpl {
private static final ADFLogger LOGGER = ADFLogger.createADFLogger(CustomCommonModuleImpl.class);
public CustomCommonModuleImpl() {
super();
}
protected void beforeDisconnect() {
CustomTransactionImpl dbTrans = (CustomTransactionImpl) this.getDBTransaction();
OracleConnection conn = dbTrans.getConnection();
try {
conn.close(OracleConnection.PROXY_SESSION);
} catch (SQLException e) {
throw new JboException(e);
}
super.beforeDisconnect();
}
protected void prepareSession(Session session) {
super.prepareSession(session);
...
}
}
2. En nuestra implementación del Module, hacemos lo siguiente:
public class xxxImpl extends CustomCommonModuleImpl implements xxxModule {
...
}
3. Importante! Si queremos que se llame al prepareSession antes de cada consulta/update/insert en base de datos, hay que ajustar los siguientes parámetros:
3.1) jbo.doconnectionpooling.- Se ajusta en la siguiente pantalla (luego aparece en properties con 1).

