diff --git a/module/VuFind/src/VuFind/RecordDriver/Factory.php b/module/VuFind/src/VuFind/RecordDriver/Factory.php
index 91b502405c58a0536ecb7bb7145c8311292ce579..8c9f5be7d0b48da801cbef5e386c7f9010a20aca 100644
--- a/module/VuFind/src/VuFind/RecordDriver/Factory.php
+++ b/module/VuFind/src/VuFind/RecordDriver/Factory.php
@@ -166,11 +166,13 @@ class Factory
             null,
             $sm->get('VuFind\Config\PluginManager')->get('searches')
         );
-        $driver->attachILS(
-            $sm->get('VuFind\ILS\Connection'),
-            $sm->get('VuFind\ILS\Logic\Holds'),
-            $sm->get('VuFind\ILS\Logic\TitleHolds')
-        );
+        if ($sm->has('VuFind\ILS\Connection')) {
+            $driver->attachILS(
+                $sm->get('VuFind\ILS\Connection'),
+                $sm->get('VuFind\ILS\Logic\Holds'),
+                $sm->get('VuFind\ILS\Logic\TitleHolds')
+            );
+        }
         $driver->attachSearchService($sm->get('VuFindSearch\Service'));
         return $driver;
     }
@@ -189,11 +191,13 @@ class Factory
             null,
             $sm->get('VuFind\Config\PluginManager')->get('searches')
         );
-        $driver->attachILS(
-            $sm->get('VuFind\ILS\Connection'),
-            $sm->get('VuFind\ILS\Logic\Holds'),
-            $sm->get('VuFind\ILS\Logic\TitleHolds')
-        );
+        if ($sm->has('VuFind\ILS\Connection')) {
+            $driver->attachILS(
+                $sm->get('VuFind\ILS\Connection'),
+                $sm->get('VuFind\ILS\Logic\Holds'),
+                $sm->get('VuFind\ILS\Logic\TitleHolds')
+            );
+        }
         $driver->attachSearchService($sm->get('VuFindSearch\Service'));
         return $driver;
     }