Upgrade fasterXML libraries for OS-9

Upgrade fasterXML to version 2.9.5 to address security vulnerability
Wrap calls to treeRead(InputStream) to handle new behavior of null streams

Change-Id: Id199cfacd0cf9e5371dc33de9f1e058c2e72eaa5
diff --git a/web/api/src/main/java/org/onosproject/rest/resources/MulticastRouteWebResource.java b/web/api/src/main/java/org/onosproject/rest/resources/MulticastRouteWebResource.java
index 374605b..cdfd76e 100644
--- a/web/api/src/main/java/org/onosproject/rest/resources/MulticastRouteWebResource.java
+++ b/web/api/src/main/java/org/onosproject/rest/resources/MulticastRouteWebResource.java
@@ -25,6 +25,7 @@
 import org.onosproject.rest.AbstractWebResource;
 
 import static org.onlab.util.Tools.nullIsNotFound;
+import static org.onlab.util.Tools.readTreeFromStream;
 
 import javax.ws.rs.Consumes;
 import javax.ws.rs.DELETE;
@@ -79,7 +80,7 @@
         final String ingressStr = "ingress";
         MulticastRouteService service = get(MulticastRouteService.class);
         try {
-            ObjectNode jsonTree = (ObjectNode) mapper().readTree(stream);
+            ObjectNode jsonTree = readTreeFromStream(mapper(), stream);
             McastRoute route = codec(McastRoute.class).decode(jsonTree, this);
             service.add(route);
             if (jsonTree.has(ingressStr)) {
@@ -110,7 +111,7 @@
     public Response deleteRoute(InputStream stream) {
         MulticastRouteService service = get(MulticastRouteService.class);
         try {
-            ObjectNode jsonTree = (ObjectNode) mapper().readTree(stream);
+            ObjectNode jsonTree = readTreeFromStream(mapper(), stream);
             McastRoute route = codec(McastRoute.class).decode(jsonTree, this);
             service.remove(route);
         } catch (IOException ex) {
@@ -141,7 +142,7 @@
         try {
             McastRoute route = new McastRoute(IpAddress.valueOf(source), IpAddress.valueOf(group),
                     McastRoute.Type.STATIC);
-            ObjectNode jsonTree = (ObjectNode) mapper().readTree(stream);
+            ObjectNode jsonTree = readTreeFromStream(mapper(), stream);
 
             jsonTree.path("sinks").forEach(node -> {
                 ConnectPoint sink = ConnectPoint.deviceConnectPoint(node.asText());