我的JSF应用程序中有一个随机错误,它会剥离我的所有HTTP参数。它是随机发生的,我无法收到任何错误消息(即使遵循BalusC的建议here和here)。
我无法查明原因并进行修复,因此我想知道是否有另一种解决办法:如果所有参数都为空,则强制重新发送请求。有没有办法让浏览器重新发送请求?例如,通过JSF或HTTP错误代码。
编辑:清理不必要的代码。答案 0 :(得分:0)
最后,我遵循了@Xtreme Biker的建议,而是建立了一个过滤器。它检查参数是否存在,否则它发送重定向响应(HTTP错误代码307)。然后浏览器发回相同的请求,该请求继续进行。
类似的东西:
String formWebContainerWidth = httpRequest.getParameter("myParam");
if(formWebContainerWidth == null){
// SC_TEMPORARY_REDIRECT = 307
httpResponse.setStatus(HttpServletResponse.SC_TEMPORARY_REDIRECT);
httpResponse.setHeader("Location", httpRequest.getRequestURI());
} else {
chain.doFilter(request, response);
}
编辑:添加了位置,否则浏览器有时会显示“无法访问的页面”错误消息。