Fixed bug in Flows REST API for handling flows with no app ID

Change-Id: I67dc2bd7a1f5df71f29b16bed70922eba8cbae27
diff --git a/core/common/src/main/java/org/onosproject/codec/impl/FlowEntryCodec.java b/core/common/src/main/java/org/onosproject/codec/impl/FlowEntryCodec.java
index 3f581be..793b6b1 100644
--- a/core/common/src/main/java/org/onosproject/codec/impl/FlowEntryCodec.java
+++ b/core/common/src/main/java/org/onosproject/codec/impl/FlowEntryCodec.java
@@ -15,15 +15,15 @@
  */
 package org.onosproject.codec.impl;
 
+import com.fasterxml.jackson.databind.node.ObjectNode;
 import org.onosproject.codec.CodecContext;
 import org.onosproject.codec.JsonCodec;
+import org.onosproject.core.ApplicationId;
 import org.onosproject.core.CoreService;
 import org.onosproject.net.flow.FlowEntry;
 import org.onosproject.net.flow.TrafficSelector;
 import org.onosproject.net.flow.TrafficTreatment;
 
-import com.fasterxml.jackson.databind.node.ObjectNode;
-
 import static com.google.common.base.Preconditions.checkNotNull;
 
 /**
@@ -37,10 +37,14 @@
 
         CoreService service = context.getService(CoreService.class);
 
+        ApplicationId appId = service.getAppId(flowEntry.appId());
+
+        String strAppId = (appId == null) ? "<none>" : appId.name();
+
         final ObjectNode result = context.mapper().createObjectNode()
                 .put("id", Long.toString(flowEntry.id().value()))
                 .put("tableId", flowEntry.tableId())
-                .put("appId", service.getAppId(flowEntry.appId()).name())
+                .put("appId", strAppId)
                 .put("groupId", flowEntry.groupId().id())
                 .put("priority", flowEntry.priority())
                 .put("timeout", flowEntry.timeout())