Description
SlingSafeMethodsServlet.service(ServletRequest req, ServletResponse res) tries to cast request & response objects to Sling's specific request & response interfaces. Therefore it catches a ClassCastException for those (seldom) cases where the servlet is erroneously used in a non-Sling environment and throws a ServletException in that case with the message "Not a Sling HTTP request/response".
But this also swallows class-cast exceptions thrown inside custom servlets that inherit from SlingSafeMethodsServlet. The stacktrace is lost and the error message is wrong in this case.
This can be fixed by doing an instanceof check instead of the try/catch block.