diff --git a/ONAP-PDP/src/test/java/org/onap/policy/xacml/action/FindActionTest.java b/ONAP-PDP/src/test/java/org/onap/policy/xacml/action/FindActionTest.java
index 93cb285..5403f8f 100644
--- a/ONAP-PDP/src/test/java/org/onap/policy/xacml/action/FindActionTest.java
+++ b/ONAP-PDP/src/test/java/org/onap/policy/xacml/action/FindActionTest.java
@@ -46,7 +46,6 @@
 import org.junit.BeforeClass;
 import org.junit.Test;
 import org.onap.policy.common.endpoints.http.server.HttpServletServer;
-import org.onap.policy.common.endpoints.http.server.impl.IndexedHttpServletServerFactory;
 import org.onap.policy.common.utils.network.NetworkUtil;
 import org.onap.policy.xacml.custom.OnapFunctionDefinitionFactory;
 
@@ -69,8 +68,8 @@
     @BeforeClass
     public static void setUpServer() {
         try {
-            final HttpServletServer testServer = IndexedHttpServletServerFactory.getInstance().build("dmaapSim",
-                    "localhost", MOCK_SERVER_PORT, "/", false, true);
+            final HttpServletServer testServer =
+                    HttpServletServer.factory.build("dmaapSim", "localhost", MOCK_SERVER_PORT, "/", false, true);
             testServer.addServletClass("/*", DummyRest.class.getName());
             testServer.waitedStart(2000);
             if (!NetworkUtil.isTcpPortOpen("localhost", testServer.getPort(), 5, 10000L)) {
@@ -84,7 +83,7 @@
 
     @AfterClass
     public static void tearDownSimulator() {
-        IndexedHttpServletServerFactory.getInstance().destroy();
+        HttpServletServer.factory.destroy();
     }
 
     /**
