/** * @param command command to execute. */ @Override public <T extends Command> void onCommand(T command) { try { if(jndiConnection != null){ Base.open(jndiConnection); }else{ Base.open(); } Base.openTransaction(); command.execute(); Base.commitTransaction(); } catch (Exception e) { try { if (Base.hasConnection()) { Base.rollbackTransaction(); } } catch (Exception ignore) {} onException(command, e); } finally { try { Base.close(); } catch (Exception ignore) {} } }
/** * @param command command to execute. */ @Override public <T extends Command> void onCommand(T command) { try { if(jndiConnection != null){ Base.open(jndiConnection); }else{ Base.open(); } Base.openTransaction(); command.execute(); Base.commitTransaction(); } catch (Exception e) { try { if (Base.hasConnection()) { Base.rollbackTransaction(); } } catch (Exception ignore) {} onException(command, e); } finally { try { Base.close(); } catch (Exception ignore) {} } }