java - 页面重定向时的 Wicket 异常

标签 java wicket

我有一个 Wicket 页面,在表单提交上我重定向到另一个页面。我有这个:

@Override
protected void onSubmit()
{
    //Do something
    response.sendRedirect(previousPageUrl);
}

页面已正确重定向,但我收到此异常:

[org.apache.wicket.protocol.http.WebResponse] [Unable to redirect to:..., HTTP Response has already been committed.]
[org.apache.wicket.protocol.http.WicketFilter] [closing the buffer error]
java.lang.IllegalStateException: Committed
    at org.eclipse.jetty.server.Response.resetBuffer(Response.java:1059) ~[na:na]
    at org.eclipse.jetty.server.Response.sendRedirect(Response.java:449) ~[na:na]
    at org.apache.wicket.protocol.http.WebResponse.sendRedirect(WebResponse.java:299) ~[wicket-1.4.17.jar:1.4.17]
    at org.apache.wicket.protocol.http.WebResponse.redirect(WebResponse.java:250) ~[wicket-1.4.17.jar:1.4.17]
    at org.apache.wicket.protocol.http.BufferedWebResponse.close(BufferedWebResponse.java:67) ~[wicket-1.4.17.jar:1.4.17]

我已经尝试在 sendRedirect() 调用之前添加此行,但没有帮助:

getRequestCycleSettings().setRenderStrategy(IRequestCycleSettings.ONE_PASS_RENDER);

最佳答案

您必须中断 Wicket 的请求处理:

 throw new RedirectToUrlException(previousPageUrl);

关于java - 页面重定向时的 Wicket 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18001231/

相关文章:

java - javamail中有没有同时搜索所有邮箱的解决方案?

java - 如果在android中找不到元素如何抛出

java - 将View动画直接应用到Drawable而不是整个View

java - 我如何替换特定字符出现一次以外的所有字符?

java - XML 文件位于内存中,而不是作为磁盘上的文件

java - 为什么我们不能创建 Collections 类的实例(不是 Collection Interface)?

wicket - 在 Wicket 中检查用户代理

java - 从 Wordpress POST 到 Java

maven - Intellij Idea 多项目 Wicket 口应用找不到 webapp

java - Wicket 口 SEO : removing "?wicket:interface=..." from AjaxFallbackLinks