Tuckey UrlRewrite过滤器无法正常使用JSF表单

时间:2011-10-16 17:26:46

标签: jsf jsf-2 url-rewriting tuckey-urlrewrite-filter

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

  

http://localhost:8080/myapp/page

而不是

  

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

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

  

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

我得到的是FacesFileNotFoundException

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

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