jsf - 导航到另一个页面 JSF

标签 jsf jsf-2

我编写了一个jsf应用程序,该应用程序将数据插入mysql数据库并在另一个页面中显示一些插入的详细信息。

我成功地将值插入数据库,但即使在编写导航规则后也无法重定向到其他页面。

我的操作代码

<div align="center"><p:commandButton label="Submit"  action="#{userData.add}"   align="center" ajax="false" /></div>

导航规则

<managed-bean>
        <managed-bean-name>UserData</managed-bean-name>
        <managed-bean-class>userData.UserData</managed-bean-class>
        <managed-bean-scope>session</managed-bean-scope>
    </managed-bean>
    <navigation-rule>
        <display-name>home.xhtml</display-name>
        <from-view-id>/home.xhtml</from-view-id>
        <navigation-case>
            <to-view-id>/badge.xhtml</to-view-id>
        </navigation-case>
    </navigation-rule>

如果我将face-redirect写入true,那么它会显示错误,或者如果我将操作写入其他页面,那么它不会将值插入数据库。

最佳答案

停止阅读 JSF 1.x 资源并摆脱所有 JSF 1.x 风格 <managed-bean><navigation-rule> faces-config.xml 中的条目.

适合您的 JSF 2.x 方法 action="#{userData.add}"如下:

@ManagedBean
@ViewScoped
public class UserData {

    public String add() {
        // ...

        return "/badge.xhtml?faces-redirect=true";
    }

}

不需要额外的 XML 困惑。也没有 Action 监听器。

JSF 2.x 教程/书籍的链接可以在 our JSF wiki page 中找到。 .

另请参阅:

关于jsf - 导航到另一个页面 JSF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30536572/

相关文章:

jsf-2 - PrimeFaces 从延迟加载数据表中导出数据

java - 未调用 Crossfield 验证的自定义类级别约束

java - 无法从托管 bean 获取 session ID

jsf - pageflowScope 在 ADF Faces 中到底有什么作用?

css - 如何更改默认主页图标

jsf - 如何处理-SESN0008E用户试图在WebSphere上访问该用户拥有的 session

jsf - 在dataTable中显示一对多关系

javascript - 在 javascript 中修改的值未在 JSF PhaseListener 中更新

java - JSF2 自定义 UIComponent 属性数据类型

css - 从云端加载 CSS