我从两个页面调用了一个函数。一个页面工作,其他页面无法正常工作

时间:2012-07-24 06:32:57

标签: jsf-2 managed-bean

在索引中包含树页面(列表,视图,编辑)并使用相同的命令拖页(列表和视图)。当我在List.xhtml页面的查看或编辑按钮时单击并打开它;但View.xhtml页面的编辑按钮单击然后显示流动按摩:

Unable to find matching navigation case with from-view-id '/index.xhtml' for action '#{instituteController.viewEdit}' with outcome 'null'

我想要查看页面的编辑按钮单击以编辑打开到索引页面的页面。 List.xhtml代码:

<h:commandButton action="#{instituteController.prepareView}" value="#{bundle.ListInstituteViewLink}">
   <f:ajax execute="@form" render="@form"/>
</h:commandButton>

<h:commandButton action="#{instituteController.prepareEdit}" value="#{bundle.ListInstituteEditLink}">
    <f:ajax execute="@form" render="@form"/>
</h:commandButton>

View.xhtml代码

 <h:commandButton action="#{instituteController.viewEdit}" value="#{bundle.ListInstituteEditLink}">
 <f:ajax execute="@form" render="@form"/>
</h:commandButton>

instituteController.java代码:

   public String prepareEdit() {
    current = (Institute) getItems().getRowData();
    selectedItemIndex = pagination.getPageFirstItem() + getItems().getRowIndex();
    return "index";
}
 public String viewEdit() {

          return "null";
}

如果我返回“索引”;这个命令不起作用。再次显示此代码:

          public String viewEdit() {

          return "index";
          }

2 个答案:

答案 0 :(得分:0)

因为您返回“null”,所以会在您的异常中写入。如果您想要保留在您想去的页面的同一页面或名称,请返回空字符串。

答案 1 :(得分:0)

你的错误在这里:

public String viewEdit() {
    // ...
    return "null";
}

您正在返回值String的{​​{1}}个实例。这与文字"null"不同。

相应修复:

null

或者只是不返回任何内容:

public String viewEdit() {
    // ...
    return null;
}