如何强制JSF重新发送请求?

时间:2017-07-03 10:13:34

标签: jsf jsf-1.2

我的JSF应用程序中有一个随机错误,它会剥离我的所有HTTP参数。它是随机发生的,我无法收到任何错误消息(即使遵循BalusC的建议herehere)。

我无法查明原因并进行修复,因此我想知道是否有另一种解决办法:如果所有参数都为空,则强制重新发送请求。有没有办法让浏览器重新发送请求?例如,通过JSF或HTTP错误代码。

编辑:清理不必要的代码。

1 个答案:

答案 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);
}

编辑:添加了位置,否则浏览器有时会显示“无法访问的页面”错误消息。