Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf 多阶段形式策略_Jsf_Jsf 2_Facelets - Fatal编程技术网

Jsf 多阶段形式策略

Jsf 多阶段形式策略,jsf,jsf-2,facelets,Jsf,Jsf 2,Facelets,目前,我正在构建一个页面,用于输入公司处理的不同产品的定价数据。定价数据有点复杂,因此需要不同的表格,具体取决于输入新数据的项目。现在我处理这个问题的策略是将页面分割成多个表单,在下一阶段输入有效数据时触发AJAX更新。每个表单都包含一个指向控制器bean上的方法的ui:include,该方法返回一个字符串,该字符串指向一个xhtml代码段,该xhtml代码段具有之前输入的数据的适当表单结构 <form id="stageOne"> Some content that trigger

目前,我正在构建一个页面,用于输入公司处理的不同产品的定价数据。定价数据有点复杂,因此需要不同的表格,具体取决于输入新数据的项目。现在我处理这个问题的策略是将页面分割成多个表单,在下一阶段输入有效数据时触发AJAX更新。每个表单都包含一个指向控制器bean上的方法的ui:include,该方法返回一个字符串,该字符串指向一个xhtml代码段,该xhtml代码段具有之前输入的数据的适当表单结构

<form id="stageOne"> Some content that triggers an ajax update of stageTwo </form>
<form id="stageTwo"> <ui:include src="#{controller.getStageTwo()"> </form>

我觉得这个解决方案有点不对劲,尤其是让控制器方法负责知道调用页可能使用的所有xhtml片段的确切位置。我还是一个比较新的人,我觉得我可能错过了什么。有没有更好的方法来处理这种情况?

像这样的方法怎么样

<ui:include src="snippetName#{controller.stageOneContent}.xhtml">


您只需要将
snippetName.xhtml
重命名为
snippetName1.xhtml

这将很好地工作。我不知道jsf会像那样自动连接src的内容。不客气。这并不完全是“JSF”。这就是EL(表达语言)。另见
<ui:include src="snippetName#{controller.stageOneContent}.xhtml">