h:命令按钮不在<o:form> </o:form>中工作

时间:2013-10-21 06:14:10

标签: jsf primefaces omnifaces

<html xmlns:h="http://java.sun.com/jsf/facelets"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:p="http://primefaces.org/ui"
      xmlns:o="http://omnifaces.org/ui">

<o:form includeViewParams="true">
  <h:commandButton value="Home" action="/index?faces-redirect=true"/>
  <p:dataTable> 

  </p:dataTable>
</o:form>

h:commandButton在o:form下无法正常工作。当我点击它时,它仍然在同一页面上。但是当我改为h:form时,它可以工作。不过我需要使用o:form作为includeViewParams。有什么方法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:4)

此构造适用于我,因为它实际导航到/index。只有视图参数从URL中消失,因为您正在强制重定向。但还有更多,<h:commandButton>基本上是用于此目的的错误工具。您需要纯页面到页面导航。您应该根本不使用命令链接/按钮,而是使用普通链接/按钮。您需要<h:button>

<h:button value="Home" outcome="/index" includeViewParams="true" />

注意:这不需要任何形式。

另见: