diff --git a/xos/xos/urls.py b/xos/xos/urls.py
index cee8245..2284c63 100644
--- a/xos/xos/urls.py
+++ b/xos/xos/urls.py
@@ -20,12 +20,6 @@
 
 # from core.xoslib import XOSLibDataView
 
-# Django settings for XOS.
-from config import Config
-from config import set_override
-config = Config()
-
-
 def load_class(full_class_string):
     """
     dynamically load a class from a string
@@ -39,13 +33,6 @@
     # Finally, we retrieve the Class
     return getattr(module, class_str)
 
-servicePage = getattr(config, "gui_service_view_class", ServiceGridView)
-
-if(isinstance(servicePage, basestring)):
-    serviceClass = getattr(load_class(servicePage), "as_view")
-else:
-    serviceClass = getattr(servicePage, "as_view")
-
 # from api import import_api_methods
 
 admin.site = SitePlus()
@@ -62,7 +49,7 @@
 
     url(r'^mcord', MCordView.as_view(), name='mcord'),
 
-    url(r'^serviceGrid', serviceClass(), name='serviceGrid'),
+    url(r'^serviceGrid', ServiceGridView.as_view(), name='serviceGrid'),
 
     # url(r'^docs/', include('rest_framework_swagger.urls')),
 
