Tuckey UrlRewrite 过滤器无法与 JSF 表单正常工作

发布于 2024-12-10 01:38:56 字数 686 浏览 0 评论 0原文

我在 JSF 应用程序中集成了 Tuckey UrlRewrite 过滤器。我的网址现在看起来像:

http://localhost:8080/myapp/page

而不是

http://localhost:8080/myapp/faces/page.xhtml< /p>

问题是我的 JSF 表单提交到旧网址

http://localhost:8080/myapp/faces/page.xhtml< /p>

我得到FacesFileNotFoundException 异常。

我该如何解决这个问题?

I integrated Tuckey UrlRewrite filter in my JSF application. My URLs now look like:

http://localhost:8080/myapp/page

instead of

http://localhost:8080/myapp/faces/page.xhtml

The problem is that my JSF forms submits to the old url

http://localhost:8080/myapp/faces/page.xhtml

and I am getting a FacesFileNotFoundException.

How can I solve this issue?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

月牙弯弯 2024-12-17 01:38:56

您必须实现自定义 ViewHandler并覆盖 getActionURL() 方法返回所需的表单操作 URL。这就是表单获取其操作 URL 的地方。顺便说一句,这也是 JSF URL 重写解决方案 PrettyFaces 所做的事情。您可能想使用它而不是重新发明同一个轮子。顺便说一句,它是开源的,因此您可以查看其源代码,看看他们是如何做到的。

You've to implement a custom ViewHandler and override the getActionURL() method to return the desired form action URL. That's where the forms get its action URL from. This is by the way also what PrettyFaces, the JSF URL rewrite solution, does. You may want to use it instead of reinventing the same wheel. It's by the way open source, so you could just peek around in its source code to see how they did it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文