refactor[TW18876]: Remove ATS static usage of ObjectMapper

Change-Id: Iee1a33dca3e208f87edc875fd89f0e1965ab0254
diff --git a/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/AbstractRestTest.java b/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/AbstractRestTest.java
index 8f25ed7..80bce44 100644
--- a/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/AbstractRestTest.java
+++ b/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/AbstractRestTest.java
@@ -19,6 +19,7 @@
 import javax.ws.rs.core.MediaType;
 import org.eclipse.osee.ats.core.workflow.util.WorkItemsJsonReader;
 import org.eclipse.osee.ats.ide.integration.tests.AtsApiService;
+import org.eclipse.osee.framework.core.JaxRsApi;
 import org.eclipse.osee.framework.core.util.JsonUtil;
 import org.eclipse.osee.framework.jdk.core.type.OseeCoreException;
 import org.junit.Assert;
@@ -27,6 +28,7 @@
  * @author Donald G. Dunne
  */
 public abstract class AbstractRestTest {
+   private final JaxRsApi jaxRsApi = AtsApiService.get().jaxRsApi();
 
    protected void getAndCountWorkItems(WebTarget target, int expected) {
       String json = getJson(target);
@@ -41,7 +43,7 @@
    protected Object getFirstAndCount(WebTarget target, int count) {
       String json = getJson(target);
 
-      Object[] objs = JsonUtil.readValue(json, Object[].class);
+      Object[] objs = jaxRsApi.readValue(json, Object[].class);
       Assert.assertEquals(count, objs.length);
       return objs[0];
    }
@@ -49,14 +51,14 @@
    protected Object getFirstAndCount(String url, int count) {
       String json = getJson(url);
 
-      Object[] objs = JsonUtil.readValue(json, Object[].class);
+      Object[] objs = jaxRsApi.readValue(json, Object[].class);
       Assert.assertEquals(count, objs.length);
       return objs[0];
    }
 
    protected Object getFirstAndCountGreater(String url, int count) {
       String json = getJson(url);
-      Object[] objs = JsonUtil.readValue(json, Object[].class);
+      Object[] objs = jaxRsApi.readValue(json, Object[].class);
       boolean countGE = objs.length >= count;
       Assert.assertTrue(String.format("Length %d expected to be greater than or equal to %d", objs.length, count),
          countGE);
@@ -64,7 +66,7 @@
    }
 
    private JsonNode readTree(String url) {
-      return JsonUtil.readTree(getJson(url));
+      return jaxRsApi.readTree(getJson(url));
    }
 
    protected String getHtml(String url) {
@@ -80,7 +82,7 @@
    }
 
    private String getAndCheckResponseCode(String path, MediaType mediaType) {
-      return AtsApiService.get().jaxRsApi().newTarget(path).request(mediaType).get().readEntity(String.class);
+      return jaxRsApi.newTarget(path).request(mediaType).get().readEntity(String.class);
    }
 
    protected JsonNode testUrl(String url, int size, String expectedName, String key, boolean keyExists) {
diff --git a/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/AtsActionEndpointImplOptionsTest.java b/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/AtsActionEndpointImplOptionsTest.java
index 2ad2ca2..a458ac3 100644
--- a/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/AtsActionEndpointImplOptionsTest.java
+++ b/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/AtsActionEndpointImplOptionsTest.java
@@ -20,7 +20,6 @@
 import org.eclipse.osee.ats.api.workflow.WorkItemWriterOptions;
 import org.eclipse.osee.ats.ide.integration.tests.AtsApiService;
 import org.eclipse.osee.framework.core.JaxRsApi;
-import org.eclipse.osee.framework.core.util.JsonUtil;
 import org.eclipse.osee.framework.jdk.core.util.Strings;
 import org.junit.Assert;
 import org.junit.Test;
@@ -91,7 +90,7 @@
 
    private JsonNode testActionRestCall(WebTarget target, int size) {
       String json = getJson(target);
-      JsonNode arrayNode = JsonUtil.readTree(json);
+      JsonNode arrayNode = jaxRsApi.readTree(json);
       Assert.assertEquals(size, arrayNode.size());
       return arrayNode.get(0);
    }
diff --git a/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/AtsActionEndpointImplTest.java b/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/AtsActionEndpointImplTest.java
index ef67e87..ee827d3 100644
--- a/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/AtsActionEndpointImplTest.java
+++ b/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/AtsActionEndpointImplTest.java
@@ -56,7 +56,6 @@
 import org.eclipse.osee.framework.core.enums.CoreAttributeTypes;
 import org.eclipse.osee.framework.core.enums.DemoBranches;
 import org.eclipse.osee.framework.core.enums.DemoUsers;
-import org.eclipse.osee.framework.core.util.JsonUtil;
 import org.eclipse.osee.framework.jdk.core.util.Lib;
 import org.eclipse.osee.framework.jdk.core.util.Strings;
 import org.eclipse.osee.framework.skynet.core.artifact.Artifact;
@@ -72,8 +71,8 @@
 public class AtsActionEndpointImplTest extends AbstractRestTest {
    private static final String committedCodeWfId = DemoArtifactToken.SAW_Commited_Code_TeamWf.getIdString();
    private static final String codeWfId = DemoArtifactToken.SAW_Code.getIdString();
-   private TeamWorkFlowArtifact teamWfArt;
    private final JaxRsApi jaxRsApi = AtsApiService.get().jaxRsApi();
+   private TeamWorkFlowArtifact teamWfArt;
 
    @Test
    public void testUnreleasedVersions() {
@@ -212,7 +211,7 @@
 
    private JsonNode testActionRestCall(WebTarget target, int size) {
       String json = target.request(MediaType.APPLICATION_JSON_TYPE).get().readEntity(String.class);
-      JsonNode arrayNode = JsonUtil.readTree(json);
+      JsonNode arrayNode = jaxRsApi.readTree(json);
       Assert.assertEquals(size, arrayNode.size());
 
       arrayNode.forEach(this::testAction);
@@ -696,7 +695,7 @@
       String newAction = AtsApiService.get().getServerEndpoints().getActionEndpoint().createEmptyAction(
          AtsApiService.get().getUserService().getCurrentUserId(), aiStr, "New Action");
 
-      JsonNode root = JsonUtil.readTree(newAction);
+      JsonNode root = jaxRsApi.readTree(newAction);
       Long id = root.path("id").asLong();
 
       TeamWorkFlowArtifact teamArt =
diff --git a/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/AtsProductLineEndpointTest.java b/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/AtsProductLineEndpointTest.java
index cf94926..c5ec9ae 100644
--- a/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/AtsProductLineEndpointTest.java
+++ b/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/AtsProductLineEndpointTest.java
@@ -17,7 +17,6 @@
 import javax.ws.rs.client.WebTarget;
 import org.eclipse.osee.ats.ide.integration.tests.AtsApiService;
 import org.eclipse.osee.framework.core.JaxRsApi;
-import org.eclipse.osee.framework.core.util.JsonUtil;
 import org.junit.Assert;
 import org.junit.Test;
 
@@ -35,12 +34,12 @@
       String path = "ats/ple/branches/";
       WebTarget target = jaxRsApi.newTargetQuery(path + "/baseline");
 
-      JsonNode action = testActionRestCall(target, 1);
+      testActionRestCall(target, 1);
    }
 
    private JsonNode testActionRestCall(WebTarget target, int size) {
       String json = getJson(target);
-      JsonNode arrayNode = JsonUtil.readTree(json);
+      JsonNode arrayNode = jaxRsApi.readTree(json);
       Assert.assertEquals(size, arrayNode.size());
       return arrayNode.get(0);
    }
diff --git a/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/UserResourceTest.java b/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/UserResourceTest.java
index d720c2c..3fd21fc 100644
--- a/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/UserResourceTest.java
+++ b/plugins/org.eclipse.osee.ats.ide.integration.tests/src/org/eclipse/osee/ats/ide/integration/tests/ats/resource/UserResourceTest.java
@@ -14,6 +14,8 @@
 package org.eclipse.osee.ats.ide.integration.tests.ats.resource;
 
 import com.fasterxml.jackson.databind.JsonNode;
+import org.eclipse.osee.ats.ide.integration.tests.AtsApiService;
+import org.eclipse.osee.framework.core.JaxRsApi;
 import org.eclipse.osee.framework.core.enums.DemoUsers;
 import org.eclipse.osee.framework.core.util.JsonUtil;
 import org.junit.Assert;
@@ -25,11 +27,12 @@
  * @author Donald G. Dunne
  */
 public class UserResourceTest extends AbstractRestTest {
+   private final JaxRsApi jaxRsApi = AtsApiService.get().jaxRsApi();
 
    @Test
    public void testGet() throws Exception {
       String json = getJson("/ats/user");
-      JsonNode users = JsonUtil.readTree(json);
+      JsonNode users = jaxRsApi.readTree(json);
       Assert.assertTrue(users.size() >= 9);
       Assert.assertEquals(DemoUsers.Joe_Smith.getUserId(),
          JsonUtil.getArrayElement(users, "name", DemoUsers.Joe_Smith.getName()).get("userId").asText());
diff --git a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/navigate/RecentlyVisitedNavigateItems.java b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/navigate/RecentlyVisitedNavigateItems.java
index 2614aba..c944513 100644
--- a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/navigate/RecentlyVisitedNavigateItems.java
+++ b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/navigate/RecentlyVisitedNavigateItems.java
@@ -25,7 +25,6 @@
 import org.eclipse.osee.ats.ide.world.WorldEditor;
 import org.eclipse.osee.ats.ide.world.WorldEditorSimpleProvider;
 import org.eclipse.osee.framework.core.data.ArtifactToken;
-import org.eclipse.osee.framework.core.util.JsonUtil;
 import org.eclipse.osee.framework.jdk.core.util.Lib;
 import org.eclipse.osee.framework.jdk.core.util.Strings;
 import org.eclipse.osee.framework.logging.OseeLog;
@@ -141,7 +140,7 @@
    public boolean preShutdown(IWorkbench workbench, boolean forced) {
       try {
          if (visitedItems != null && !visitedItems.getReverseVisited().isEmpty()) {
-            String toStoreJson = JsonUtil.toJson(visitedItems);
+            String toStoreJson = AtsApiService.get().jaxRsApi().toJson(visitedItems);
             String fromStoreJson = AtsApiService.get().getUserConfigValue(RECENTLY_VISITED_TOKENS);
             if (!toStoreJson.equals(fromStoreJson)) {
                AtsApiService.get().setUserConfigValue(RECENTLY_VISITED_TOKENS, toStoreJson);
diff --git a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/util/widgets/XAttachmentCombo.java b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/util/widgets/XAttachmentCombo.java
index 79fa57b..e05d304 100644
--- a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/util/widgets/XAttachmentCombo.java
+++ b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/util/widgets/XAttachmentCombo.java
@@ -37,7 +37,6 @@
 import org.eclipse.osee.framework.core.enums.CoreBranches;
 import org.eclipse.osee.framework.core.enums.CoreRelationTypes;
 import org.eclipse.osee.framework.core.exception.ArtifactDoesNotExist;
-import org.eclipse.osee.framework.core.util.JsonUtil;
 import org.eclipse.osee.framework.core.util.Result;
 import org.eclipse.osee.framework.jdk.core.type.Pair;
 import org.eclipse.osee.framework.jdk.core.util.Lib;
@@ -132,7 +131,8 @@
 
    protected Map<String, BranchId> getNameToLocationMap() {
       String locationList = getFileListString();
-      AtsAttachments allAttachments = JsonUtil.readValue(locationList, AtsAttachments.class);
+
+      AtsAttachments allAttachments = AtsApiService.get().jaxRsApi().readValue(locationList, AtsAttachments.class);
       for (AtsAttachment attachment : allAttachments.getAttachments()) {
          nameBranchMap.put(attachment.getName(), attachment.getBranch());
          location = attachment.getlocation();
diff --git a/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/config/AtsDbConfigBase.java b/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/config/AtsDbConfigBase.java
index e0a3738..c12c405 100644
--- a/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/config/AtsDbConfigBase.java
+++ b/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/config/AtsDbConfigBase.java
@@ -53,7 +53,6 @@
 import org.eclipse.osee.framework.core.enums.PermissionEnum;
 import org.eclipse.osee.framework.core.enums.SystemUser;
 import org.eclipse.osee.framework.core.server.OseeInfo;
-import org.eclipse.osee.framework.core.util.JsonUtil;
 import org.eclipse.osee.framework.core.util.OseeInf;
 import org.eclipse.osee.framework.jdk.core.result.XResultData;
 import org.eclipse.osee.framework.jdk.core.util.Conditions;
@@ -135,7 +134,7 @@
       AtsAttachments checklists = new AtsAttachments();
       checklists.addAttachment(new AtsAttachment("Document_Checklist", "osee", DemoBranches.Processes));
       checklists.addAttachment(new AtsAttachment("Process_Checklist", "osee", DemoBranches.Processes));
-      String jsonToStore = JsonUtil.toJson(checklists);
+      String jsonToStore = atsApi.jaxRsApi().toJson(checklists);
       atsApi.setConfigValue("PeerReviewChecklist", jsonToStore);
 
       // Create Processes Branch
@@ -164,7 +163,7 @@
       AtsAttachments checklists = new AtsAttachments();
       checklists.addAttachment(new AtsAttachment("W_Document_Checklist", "osee", DemoBranches.Processes));
       checklists.addAttachment(new AtsAttachment("W_Process_Checklist", "osee", DemoBranches.Processes));
-      String jsonToStore = JsonUtil.toJson(checklists);
+      String jsonToStore = atsApi.jaxRsApi().toJson(checklists);
       atsApi.setConfigValue("WalkthroughChecklist", jsonToStore);
 
       // Create Top Folder on Processes Branch
diff --git a/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/config/UpdateAtsConfiguration.java b/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/config/UpdateAtsConfiguration.java
index 26fcbd2..cf73f1d 100644
--- a/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/config/UpdateAtsConfiguration.java
+++ b/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/config/UpdateAtsConfiguration.java
@@ -23,12 +23,12 @@
 import org.eclipse.osee.ats.api.config.AtsViews;
 import org.eclipse.osee.ats.api.config.IAtsConfigurationViewsProvider;
 import org.eclipse.osee.ats.api.util.ColorColumns;
+import org.eclipse.osee.framework.core.JaxRsApi;
 import org.eclipse.osee.framework.core.data.UserId;
 import org.eclipse.osee.framework.core.enums.CoreAttributeTypes;
 import org.eclipse.osee.framework.core.enums.CoreBranches;
 import org.eclipse.osee.framework.core.enums.DeletionFlag;
 import org.eclipse.osee.framework.core.enums.SystemUser;
-import org.eclipse.osee.framework.core.util.JsonUtil;
 import org.eclipse.osee.framework.core.util.OseeInf;
 import org.eclipse.osee.framework.jdk.core.result.XResultData;
 import org.eclipse.osee.framework.jdk.core.util.Collections;
@@ -51,10 +51,12 @@
 
    private final AtsApi atsApi;
    private final OrcsApi orcsApi;
+   private final JaxRsApi jaxRsApi;
 
    public UpdateAtsConfiguration(AtsApi atsApi, OrcsApi orcsApi) {
       this.atsApi = atsApi;
       this.orcsApi = orcsApi;
+      this.jaxRsApi = orcsApi.jaxRsApi();
    }
 
    public XResultData createUpdateConfig(XResultData rd) {
@@ -82,7 +84,7 @@
       try {
          AtsViews databaseViews = atsApi.getConfigService().getConfigurations().getViews();
          for (String viewsJson : getViewsJsonStrings()) {
-            AtsViews atsViews = JsonUtil.readValue(viewsJson, AtsViews.class);
+            AtsViews atsViews = jaxRsApi.readValue(viewsJson, AtsViews.class);
             // merge any new default view items to current database view items
             List<AtsAttributeValueColumn> toAdd = new LinkedList<>();
             for (AtsAttributeValueColumn defaultView : atsViews.getAttrColumns()) {
@@ -133,7 +135,7 @@
    }
 
    private String getViewsAttrValue(AtsViews defaultViews) {
-      return VIEWS_EQUAL_KEY + JsonUtil.toJson(defaultViews);
+      return VIEWS_EQUAL_KEY + jaxRsApi.toJson(defaultViews);
    }
 
    private void createUpdateValidStateAttributes() throws Exception {
@@ -155,7 +157,7 @@
    public AtsViews getConfigViews(String viewsStr) {
       AtsViews views = null;
       if (Strings.isValid(viewsStr)) {
-         views = JsonUtil.readValue(viewsStr, AtsViews.class);
+         views = jaxRsApi.readValue(viewsStr, AtsViews.class);
       } else {
          views = new AtsViews();
       }
@@ -165,7 +167,7 @@
    public ColorColumns getColorColumns(String colorStr) {
       ColorColumns columns = null;
       if (Strings.isValid(colorStr)) {
-         columns = JsonUtil.readValue(colorStr, ColorColumns.class);
+         columns = jaxRsApi.readValue(colorStr, ColorColumns.class);
       } else {
          columns = new ColorColumns();
       }
diff --git a/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/workitem/AtsWorkPackageEndpointImpl.java b/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/workitem/AtsWorkPackageEndpointImpl.java
index 6b8862a..76a014d 100644
--- a/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/workitem/AtsWorkPackageEndpointImpl.java
+++ b/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/workitem/AtsWorkPackageEndpointImpl.java
@@ -33,7 +33,6 @@
 import org.eclipse.osee.ats.api.util.IAtsChangeSet;
 import org.eclipse.osee.ats.api.workflow.WorkItemType;
 import org.eclipse.osee.framework.core.data.TransactionId;
-import org.eclipse.osee.framework.core.util.JsonUtil;
 import org.eclipse.osee.framework.jdk.core.result.XResultData;
 import org.eclipse.osee.framework.jdk.core.type.OseeArgumentException;
 import org.eclipse.osee.framework.jdk.core.util.Strings;
@@ -110,7 +109,7 @@
       String colorTeamStr = atsApi.getConfigValue(COLOR_TEAM_KEY);
       ColorTeams teams = null;
       if (Strings.isValid(colorTeamStr)) {
-         teams = JsonUtil.readValue(colorTeamStr, ColorTeams.class);
+         teams = atsApi.jaxRsApi().readValue(colorTeamStr, ColorTeams.class);
       } else {
          teams = new ColorTeams();
       }
diff --git a/plugins/org.eclipse.osee.config.admin/META-INF/MANIFEST.MF b/plugins/org.eclipse.osee.config.admin/META-INF/MANIFEST.MF
index 7c96226..2b91d90 100644
--- a/plugins/org.eclipse.osee.config.admin/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.osee.config.admin/META-INF/MANIFEST.MF
@@ -7,8 +7,9 @@
 Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Bundle-Vendor: Eclipse Open System Engineering Environment
 Service-Component: OSGI-INF/*.xml
-Import-Package: com.fasterxml.jackson.databind,
- com.fasterxml.jackson.core,
+Import-Package: com.fasterxml.jackson.core,
+ com.fasterxml.jackson.databind,
+ org.eclipse.osee.framework.core,
  org.eclipse.osee.framework.core.util,
  org.eclipse.osee.framework.jdk.core.type,
  org.eclipse.osee.framework.jdk.core.util,
diff --git a/plugins/org.eclipse.osee.config.admin/OSGI-INF/config.manager.xml b/plugins/org.eclipse.osee.config.admin/OSGI-INF/config.manager.xml
index f4e24ec..c69e251 100644
--- a/plugins/org.eclipse.osee.config.admin/OSGI-INF/config.manager.xml
+++ b/plugins/org.eclipse.osee.config.admin/OSGI-INF/config.manager.xml
@@ -3,4 +3,5 @@
    <implementation class="org.eclipse.osee.config.admin.internal.ConfigManagerImpl"/>
    <reference bind="setLogger" cardinality="1..1" interface="org.eclipse.osee.logger.Log" name="Log" policy="static"/>
    <reference bind="setConfigAdmin" cardinality="1..1" interface="org.osgi.service.cm.ConfigurationAdmin" name="ConfigurationAdmin" policy="static"/>
+   <reference bind="bindJaxRsApi" cardinality="1..1" interface="org.eclipse.osee.framework.core.JaxRsApi" name="jaxRsApi" policy="static"/>
 </scr:component>
diff --git a/plugins/org.eclipse.osee.config.admin/src/org/eclipse/osee/config/admin/internal/ConfigManagerImpl.java b/plugins/org.eclipse.osee.config.admin/src/org/eclipse/osee/config/admin/internal/ConfigManagerImpl.java
index 0d69268..4a98163 100644
--- a/plugins/org.eclipse.osee.config.admin/src/org/eclipse/osee/config/admin/internal/ConfigManagerImpl.java
+++ b/plugins/org.eclipse.osee.config.admin/src/org/eclipse/osee/config/admin/internal/ConfigManagerImpl.java
@@ -23,6 +23,7 @@
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicBoolean;
 import java.util.concurrent.atomic.AtomicReference;
+import org.eclipse.osee.framework.core.JaxRsApi;
 import org.eclipse.osee.framework.jdk.core.util.Compare;
 import org.eclipse.osee.framework.jdk.core.util.Lib;
 import org.eclipse.osee.framework.jdk.core.util.io.UriWatcher;
@@ -36,15 +37,19 @@
  */
 public class ConfigManagerImpl implements UriWatcherListener {
 
-   private final ConfigParser parser = new ConfigParser();
-
-   private Log logger;
-   private ConfigurationAdmin configAdmin;
-
-   private ConfigManagerConfiguration config;
    private final AtomicReference<UriWatcher> watcherRef = new AtomicReference<>();
    private final Map<String, ServiceConfig> services = new HashMap<>();
 
+   private ConfigParser parser;
+   private JaxRsApi jaxRsApi;
+   private Log logger;
+   private ConfigurationAdmin configAdmin;
+   private ConfigManagerConfiguration config;
+
+   public void bindJaxRsApi(JaxRsApi jaxRsApi) {
+      this.jaxRsApi = jaxRsApi;
+   }
+
    public void setLogger(Log logger) {
       this.logger = logger;
    }
@@ -55,7 +60,7 @@
 
    public void start(Map<String, Object> properties) {
       logger.trace("Starting ConfigurationManagerImpl...");
-
+      parser = new ConfigParser(jaxRsApi);
       update(properties);
    }
 
diff --git a/plugins/org.eclipse.osee.config.admin/src/org/eclipse/osee/config/admin/internal/ConfigParser.java b/plugins/org.eclipse.osee.config.admin/src/org/eclipse/osee/config/admin/internal/ConfigParser.java
index e638105..13d3214 100644
--- a/plugins/org.eclipse.osee.config.admin/src/org/eclipse/osee/config/admin/internal/ConfigParser.java
+++ b/plugins/org.eclipse.osee.config.admin/src/org/eclipse/osee/config/admin/internal/ConfigParser.java
@@ -17,7 +17,7 @@
 import java.util.Hashtable;
 import java.util.Iterator;
 import java.util.Map.Entry;
-import org.eclipse.osee.framework.core.util.JsonUtil;
+import org.eclipse.osee.framework.core.JaxRsApi;
 import org.eclipse.osee.framework.jdk.core.util.Strings;
 import org.osgi.framework.Constants;
 
@@ -33,10 +33,15 @@
  * @author Roberto E. Escobar
  */
 public class ConfigParser {
+   private final JaxRsApi jaxRsApi;
+
+   public ConfigParser(JaxRsApi jaxRsApi) {
+      this.jaxRsApi = jaxRsApi;
+   }
 
    public void process(ConfigWriter writer, String source) {
       if (Strings.isValid(source)) {
-         JsonNode services = JsonUtil.readTree(source).get("config");
+         JsonNode services = jaxRsApi.readTree(source).get("config");
 
          for (JsonNode serviceNode : services) {
             Hashtable<String, Object> properties = new Hashtable<>();