Repository: lens
Updated Branches:
  refs/heads/master b3a9cb9a1 -> 0190ef567


LENS-1211 : Fix GenericExceptionMapper to return 405 only when there is no 
matching resource


Project: http://git-wip-us.apache.org/repos/asf/lens/repo
Commit: http://git-wip-us.apache.org/repos/asf/lens/commit/0190ef56
Tree: http://git-wip-us.apache.org/repos/asf/lens/tree/0190ef56
Diff: http://git-wip-us.apache.org/repos/asf/lens/diff/0190ef56

Branch: refs/heads/master
Commit: 0190ef5676f160678c8e66c601f8168cf9a42938
Parents: b3a9cb9
Author: Rajat Khandelwal <[email protected]>
Authored: Tue Jul 19 15:53:38 2016 +0530
Committer: Amareshwari Sriramadasu <[email protected]>
Committed: Tue Jul 19 15:53:38 2016 +0530

----------------------------------------------------------------------
 .../org/apache/lens/server/error/GenericExceptionMapper.java     | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lens/blob/0190ef56/lens-server/src/main/java/org/apache/lens/server/error/GenericExceptionMapper.java
----------------------------------------------------------------------
diff --git 
a/lens-server/src/main/java/org/apache/lens/server/error/GenericExceptionMapper.java
 
b/lens-server/src/main/java/org/apache/lens/server/error/GenericExceptionMapper.java
index 9aa74ed..d761b6d 100644
--- 
a/lens-server/src/main/java/org/apache/lens/server/error/GenericExceptionMapper.java
+++ 
b/lens-server/src/main/java/org/apache/lens/server/error/GenericExceptionMapper.java
@@ -62,11 +62,13 @@ public class GenericExceptionMapper implements 
ExceptionMapper<Exception> {
       status = le.getLensAPIResult().getHttpStatusCode();
     } else if (exception instanceof WebApplicationException) {
       status = Response.Status.fromStatusCode(((WebApplicationException) 
exception).getResponse().getStatus());
+    } else if (extendedUriInfo.getMatchedResourceMethod() == null) {
+      status = Response.Status.METHOD_NOT_ALLOWED;
     } else {
       status = Response.Status.INTERNAL_SERVER_ERROR;
     }
     if (extendedUriInfo.getMatchedResourceMethod() == null) {
-      return Response.status(Response.Status.METHOD_NOT_ALLOWED).build();
+      return Response.status(status).entity("No matching resource 
method").build();
     }
     if 
(extendedUriInfo.getMatchedResourceMethod().getInvocable().getRawResponseType() 
== LensAPIResult.class) {
       if (le != null) {

Reply via email to