diff --git a/core/src/main/java/org/commonjava/aprox/core/expire/AproxScheduleListener.java b/core/src/main/java/org/commonjava/aprox/core/expire/AproxScheduleListener.java
index <HASH>..<HASH> 100644
--- a/core/src/main/java/org/commonjava/aprox/core/expire/AproxScheduleListener.java
+++ b/core/src/main/java/org/commonjava/aprox/core/expire/AproxScheduleListener.java
@@ -49,10 +49,17 @@ class AproxScheduleListener
         try
         {
             final Trigger trigger = scheduler.getTrigger( triggerKey );
-            final JobKey key = trigger.getJobKey();
-
-            final JobDetail detail = scheduler.getJobDetail( key );
-            eventDispatcher.fire( ScheduleManager.createEvent( SchedulerEventType.CANCEL, detail ) );
+            if ( trigger == null )
+            {
+                logger.error( "Cannot find scheduler trigger for key: " + triggerKey );
+            }
+            else
+            {
+                final JobKey key = trigger.getJobKey();
+
+                final JobDetail detail = scheduler.getJobDetail( key );
+                eventDispatcher.fire( ScheduleManager.createEvent( SchedulerEventType.CANCEL, detail ) );
+            }
         }
         catch ( final SchedulerException e )
         {
@@ -149,4 +156,4 @@ class AproxScheduleListener
     public void schedulingDataCleared()
     {
     }
-}
\ No newline at end of file
+}
Avoid potential NPE
in case when the trigger is not found by scheduler by the triggerKey.