Tomcat中的错误页面上的JSF commandButton

时间:2014-11-18 16:37:55

标签: java jsf servlets jsf-2.2

使用JSF2.2我尝试在404错误页面上使用h:commandButton。由于它是应用程序的错误页面,因此POST操作不会路由到辅助bean。 Tomcat只返回404。

在我的404.xhtml中:

<h:form id="myform">
    <h:commandButton action="#{backingBean.execute}" value="buttontext" />
</h:form>

我的支持bean:

@ManagedBean
@SessionScoped
public class BackingBean{
    public String execute() {
        doSomething();
        return "newTargetPage";
    }
}

在我的web.xml中:

<error-page>
    <error-code>404</error-code>
    <location>/404.xhtml</location>
</error-page>

调用URL http :: // localhost / myapp / invalidurl我得到以下html代码:

<form id="myform" action="/myapp/invalidurl " method="post">
    <input id="myform:execute" name="myform:execute"
           type="submit" value="buttontext" /> 
</form>

由于帖子的目标指向不存在的页面,tomcat会将我重定向到404页面并忘记实际的帖子操作。

如果我将所有代码转移到普通页面,它就可以正常工作。

是否可以告诉JSF表单的目标页面? 是否可以使用h:按钮调用操作?

0 个答案:

没有答案