diff --git a/fine-quartz/src/com/fr/third/v2/org/quartz/impl/jdbcjobstore/JobStoreSupport.java b/fine-quartz/src/com/fr/third/v2/org/quartz/impl/jdbcjobstore/JobStoreSupport.java index 004083236..5c3a21728 100644 --- a/fine-quartz/src/com/fr/third/v2/org/quartz/impl/jdbcjobstore/JobStoreSupport.java +++ b/fine-quartz/src/com/fr/third/v2/org/quartz/impl/jdbcjobstore/JobStoreSupport.java @@ -1199,27 +1199,26 @@ public abstract class JobStoreSupport implements JobStore, Constants { } } - if (job == null) { - try { + try { + if (job == null) { job = retrieveJob(conn, newTrigger.getJobKey()); - if (job == null) { - throw new JobPersistenceException("The job (" - + newTrigger.getJobKey() - + ") referenced by the trigger does not exist."); - } - - if (job.isConcurrentExectionDisallowed() && !recovering) { - state = checkBlockedState(conn, job.getKey(), state); - } + } + if (job == null) { + throw new JobPersistenceException("The job (" + + newTrigger.getJobKey() + + ") referenced by the trigger does not exist."); + } + if (job.isConcurrentExectionDisallowed() && !recovering) { + state = checkBlockedState(conn, job.getKey(), state); + } - if (existingTrigger) { - getDelegate().updateTrigger(conn, newTrigger, state, job); - } else { - getDelegate().insertTrigger(conn, newTrigger, state, job); - } - } catch (JobPersistenceException e) { - getLog().error(e.getMessage()); + if (existingTrigger) { + getDelegate().updateTrigger(conn, newTrigger, state, job); + } else { + getDelegate().insertTrigger(conn, newTrigger, state, job); } + } catch (JobPersistenceException e) { + getLog().error(e.getMessage()); } } catch (Exception e) { throw new JobPersistenceException("Couldn't store trigger '" + newTrigger.getKey() + "' for '" @@ -2987,7 +2986,7 @@ public abstract class JobStoreSupport implements JobStore, Constants { } catch (SQLException sqle) { getLog().error("Unable to set trigger state to ERROR.", sqle); } - return null; + throw jpe; } if (trigger.getCalendarName() != null) {