You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@manifoldcf.apache.org by kw...@apache.org on 2015/04/01 09:59:56 UTC
svn commit: r1670575 -
/manifoldcf/branches/CONNECTORS-1177/framework/api-servlet/src/main/java/org/apache/manifoldcf/apiservlet/APIServlet.java
Author: kwright
Date: Wed Apr 1 07:59:55 2015
New Revision: 1670575
URL: http://svn.apache.org/r1670575
Log:
For 401 errors, transmit empty JSON so parsers don't get mad
Modified:
manifoldcf/branches/CONNECTORS-1177/framework/api-servlet/src/main/java/org/apache/manifoldcf/apiservlet/APIServlet.java
Modified: manifoldcf/branches/CONNECTORS-1177/framework/api-servlet/src/main/java/org/apache/manifoldcf/apiservlet/APIServlet.java
URL: http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-1177/framework/api-servlet/src/main/java/org/apache/manifoldcf/apiservlet/APIServlet.java?rev=1670575&r1=1670574&r2=1670575&view=diff
==============================================================================
--- manifoldcf/branches/CONNECTORS-1177/framework/api-servlet/src/main/java/org/apache/manifoldcf/apiservlet/APIServlet.java (original)
+++ manifoldcf/branches/CONNECTORS-1177/framework/api-servlet/src/main/java/org/apache/manifoldcf/apiservlet/APIServlet.java Wed Apr 1 07:59:55 2015
@@ -222,6 +222,34 @@ public class APIServlet extends HttpServ
}
// Protected methods
+
+ protected static void sendUnauthorizedResponse(HttpServletResponse response)
+ throws IOException
+ {
+ response.setStatus(response.SC_UNAUTHORIZED);
+ sendNullJSON(response);
+ }
+
+ protected static void sendNullJSON(HttpServletResponse response)
+ throws IOException
+ {
+ String loutputText = "{}";
+ byte[] lresponseValue = loutputText.getBytes(StandardCharsets.UTF_8);
+
+ // Set response mime type
+ response.setContentType("text/plain; charset=utf-8");
+ response.setIntHeader("Content-Length", (int)lresponseValue.length);
+ ServletOutputStream out = response.getOutputStream();
+ try
+ {
+ out.write(lresponseValue,0,lresponseValue.length);
+ out.flush();
+ }
+ finally
+ {
+ out.close();
+ }
+ }
/** Perform a general "read" operation.
*/
@@ -231,7 +259,7 @@ public class APIServlet extends HttpServ
if (!ap.getLoggedOn())
{
// Login failed
- response.sendError(response.SC_UNAUTHORIZED);
+ sendUnauthorizedResponse(response);
return;
}
@@ -318,7 +346,7 @@ public class APIServlet extends HttpServ
if (!ap.getLoggedOn())
{
// Login failed
- response.sendError(response.SC_UNAUTHORIZED);
+ sendUnauthorizedResponse(response);
return;
}
@@ -488,27 +516,12 @@ public class APIServlet extends HttpServ
ap.login(tc,userID,password);
if (!ap.getLoggedOn())
{
- response.sendError(response.SC_UNAUTHORIZED);
+ sendUnauthorizedResponse(response);
return;
}
else
{
- String loutputText = "{}";
- byte[] lresponseValue = loutputText.getBytes(StandardCharsets.UTF_8);
-
- // Set response mime type
- response.setContentType("text/plain; charset=utf-8");
- response.setIntHeader("Content-Length", (int)lresponseValue.length);
- ServletOutputStream out = response.getOutputStream();
- try
- {
- out.write(lresponseValue,0,lresponseValue.length);
- out.flush();
- }
- finally
- {
- out.close();
- }
+ sendNullJSON(response);
return;
}
}
@@ -516,7 +529,7 @@ public class APIServlet extends HttpServ
if (!ap.getLoggedOn())
{
// Login failed
- response.sendError(response.SC_UNAUTHORIZED);
+ sendUnauthorizedResponse(response);
return;
}
@@ -617,7 +630,7 @@ public class APIServlet extends HttpServ
if (!ap.getLoggedOn())
{
// Login failed
- response.sendError(response.SC_UNAUTHORIZED);
+ sendUnauthorizedResponse(response);
return;
}