此规则会标记方法 sendRedirect(String) 从 javax.servlet.http.HttpServletResponse 接口作为此方法的行为可能与预期不一样。 WebSphere 实现 ServletResponse.sendRedirect() 方法将 URL 转换为相对 URL。 它会移除最后一个斜杠之前的任何路径信息。 如果这不是应用程序的预期行为,那么可以通过设置 Web 容器定制属性进行更正。 您应该检查应用程序,以查看在以下位置传递了哪些类型的 URL: sendRedirect() 方法调用以确定是否需要执行任何操作。
Web 容器定制属性
com.ibm.ws.webcontainer.RedirectWithPathInfo
可用于启用非相对 URL 行为。 如果此属性设置为 true,那么将使用路径信息来重定向 response.sendRedirect。
从 Servlet 3.1 实现开始,此行为将是缺省行为,将忽略 Web 容器定制属性。
例如:
|
protected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {
// code resp.sendRedirect("xyz"); } |
方法调用 resp.sendRedirect("xyz"); 会被举报
有关更多信息,请参阅:
Web container custom properties