diff --git a/utils/osgi/src/main/java/org/onlab/osgi/DefaultServiceDirectory.java b/utils/osgi/src/main/java/org/onlab/osgi/DefaultServiceDirectory.java
index d483991..bc401fb 100644
--- a/utils/osgi/src/main/java/org/onlab/osgi/DefaultServiceDirectory.java
+++ b/utils/osgi/src/main/java/org/onlab/osgi/DefaultServiceDirectory.java
@@ -2,6 +2,7 @@
 
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.FrameworkUtil;
+import org.osgi.framework.ServiceReference;
 
 /**
  * Default implementation of the service directory using OSGi framework utilities.
@@ -17,11 +18,16 @@
      */
     public static <T> T getService(Class<T> serviceClass) {
         BundleContext bc = FrameworkUtil.getBundle(serviceClass).getBundleContext();
-        T impl = bc.getService(bc.getServiceReference(serviceClass));
-        if (impl == null) {
-            throw new ServiceNotFoundException("Service " + serviceClass.getName() + " not found");
+        if (bc != null) {
+            ServiceReference<T> reference = bc.getServiceReference(serviceClass);
+            if (reference != null) {
+                T impl = bc.getService(reference);
+                if (impl != null) {
+                    return impl;
+                }
+            }
         }
-        return impl;
+        throw new ServiceNotFoundException("Service " + serviceClass.getName() + " not found");
     }
 
     @Override
