使用jsf准备向导流

时间:2010-07-01 19:02:45

标签: java jsf

我正在尝试使用jsf1.2 sun RI + richfaces创建一个小向导。 用户在多个页面中设置输入数据,最后在数据库中插入数据。 信息在带有编辑按钮的表格中显示为一行。 单击编辑时,将在所有页面中填充数据,用户可以再次编辑和保存。 此外,在来回导航时,数据必须保留在表单中。 目前我已经通过使用多个会话范围bean来实现这一点,这些bean通过在会话映射中查看其引用来访问彼此的数据,并且一些注入为依赖项。

我想通过避免多个会话范围bean并在会话映射中进行查找来了解是否存在标准方式/良好模式?

如果有人可以通过类似的例子将链接发送到任何博客/教程,那将是很棒的 非常感谢

2 个答案:

答案 0 :(得分:1)

您可以将它们设为单个会话范围bean的属性。

public class Wizard {
    private Step1 step1 = new Step1();
    private Step2 step2 = new Step2();
    private Step3 step3 = new Step3();
    // ...
}

并按如下方式使用

<h:form id="step1">
    <h:inputText id="input1" value="#{wizard.step1.input1}" />
    <h:inputText id="input2" value="#{wizard.step1.input2}" />
</h:form>

...

<h:form id="step2">
    <h:inputText id="input1" value="#{wizard.step2.input1}" />
    <h:inputText id="input2" value="#{wizard.step2.input2}" />
</h:form>

...

这样您就可以从动作方法内部即时访问所有内容。

答案 1 :(得分:1)

我建议您下载一个包含JSF组件的开源代码,如PrimeFaces。它会让你更容易。他们还有一个向导:PrimeFaces Wizard