diff options
Diffstat (limited to '')
-rw-r--r-- | sca-java-2.x/trunk/modules/binding-jsonrpc-runtime/src/main/java/org/apache/tuscany/sca/binding/jsonrpc/provider/JsonRpcServlet.java | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/sca-java-2.x/trunk/modules/binding-jsonrpc-runtime/src/main/java/org/apache/tuscany/sca/binding/jsonrpc/provider/JsonRpcServlet.java b/sca-java-2.x/trunk/modules/binding-jsonrpc-runtime/src/main/java/org/apache/tuscany/sca/binding/jsonrpc/provider/JsonRpcServlet.java index 9e4ef8168b..a183d2211c 100644 --- a/sca-java-2.x/trunk/modules/binding-jsonrpc-runtime/src/main/java/org/apache/tuscany/sca/binding/jsonrpc/provider/JsonRpcServlet.java +++ b/sca-java-2.x/trunk/modules/binding-jsonrpc-runtime/src/main/java/org/apache/tuscany/sca/binding/jsonrpc/provider/JsonRpcServlet.java @@ -165,11 +165,15 @@ public class JsonRpcServlet extends HttpServlet { if (input.has("jsonrpc")) { JsonRpc20Request jsonReq = new JsonRpc20Request(input); JsonRpc20Result jsonResult = invoke(jsonReq); - jsonResult.write(response.getWriter()); + if (jsonResult != null) { + jsonResult.write(response.getWriter()); + } } else { JsonRpc10Request jsonReq = new JsonRpc10Request(input); JsonRpc10Response jsonResult = invoke(jsonReq); - jsonResult.write(response.getWriter()); + if (jsonResult != null) { + jsonResult.write(response.getWriter()); + } } } } catch (Throwable e) { @@ -178,7 +182,9 @@ public class JsonRpcServlet extends HttpServlet { } private JsonRpc20Result invoke(JsonRpc20Request request) throws Exception { - + if (request.isNotification()) { + return null; + } // invoke the request String method = request.getMethod(); Object[] params = request.getParams(); @@ -251,7 +257,9 @@ public class JsonRpcServlet extends HttpServlet { } private JsonRpc10Response invoke(JsonRpc10Request request) throws Exception { - + if (request.isNotification()) { + return null; + } // invoke the request String method = request.getMethod(); Object[] params = request.getParams(); |