问题标签 [uiinclude]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
513 浏览

jsf - 是否可以在 ui:include 中使用 ui:repeat

我们都知道构建时间和渲染时间之间的区别。<ui:include>将标签(构建时间)放在(渲染时间)中绝对不是一个好主意<ui:repeat>,但是相反的做法可以吗?我们可以<ui:repeat>在里面使用<ui:include>吗?

0 投票
0 回答
232 浏览

jsf-2 - 是在 JSF 2.2 中修复?

我记得在 JSF 2.1 中它<ui:include>是一个标记处理程序,因此,它在构建组件树时被评估一次。当 src 属性在渲染之前发生变化时,页面总是使用之前的值来渲染。

然而对于 WildFly,上面的例子就可以正常工作,渲染的页面总是包含基于最新的 includedPage 值。这是为什么?还是我记错了?我在 JSF 2.2 规范中没有找到任何关于此更改的内容...

0 投票
1 回答
2863 浏览

jsf - ui:insert inside ui:include 不起作用

<ui:insert>里面可以写<ui:include>吗?当我尝试使用<ui:define name="jsInclude">内容时不可见。使用 JSF 1.2 尝试此操作时,这是有效的,但不适用于 JSF 2.2。

谁能帮助我理解 JSF 2.2 中的模板概念缺少什么?

谢谢!!

下面是我的代码

这是模板文件

这是包含的文件

下面是主要的客户页面

0 投票
0 回答
404 浏览

jsf - 将值设置到支持 bean 时,bean 名称可以是变量

有没有办法在设置参数时使用变量来定义支持 bean。在我们的应用程序中,我们允许对表中的大多数列(如果不是所有列)使用多个过滤条件。我们开发了一段代码,将其复制到实现此功能的每个列定义中。列定义示例:

包含的代码构建列标题并具有用于对列进行排序和显示用户帮助文本的命令按钮,所有这些都可以正常工作。但它也包含一个命令按钮,该按钮执行一个对话框以从用户那里获取每列的多个过滤参数。这在 PF 3.2 中运行良好,但在转换为 5.2 时,它停止了工作。在查看文档时,我发现对话框不应包含在表定义中,因此我们试图将对话框移到表定义之外。然而,这意味着为使用 ui:include 引入的代码设置的参数对对话框不可见。我可以通过设置特定于被过滤到支持 bean 的列的参数来克服这个问题:

然后对话框可以获取这些支持 bean 元素的内容,以便知道要请求哪些过滤器。如果我可以将 bean 名称指定为变量,我只需要在片段中复制的一个副本,但如果我必须输入实际的 bean 名称,我将需要为每个包含表的页面创建一个副本,超过 1000现在。我尝试了几种使用变量的方法,例如 target="#{#{programId}.field}",但到目前为止,它们要么无法解析,要么被解释为静态 bean 名称而不是变量。是否可以使用变量指定 bean 名称?

环境:PF 5.2、jBoss 7.1.3、jdk-7、jsf 2.2

0 投票
0 回答
212 浏览

jsf - ui:include 页面中的更改仅在几分钟后刷新

我有一个页面底部有一种“弹出”:

但是当该文件的内容发生更改时,即使我刷新了 10 次,页面也不会更改。

不过,在几分钟内,我刷新了页面,它运行良好。

这是某种缓存问题还是什么?

更新

我不接受答案,因为显然它与缓存无关,我删除了缓存(Ctrl+Shift+Del),但是文件中的更改仍然没有反映在页面上。此外,我的javax.faces.PROJECT_STAGE参数设置为Development.

0 投票
1 回答
851 浏览

validation - 如何将验证器添加到 ui:include?

莫哈拉 2.1

我有 facelet(省略了命名空间)inc.xhtml

我需要将视图包含到另一个 facelet 中,为name输入添加一个额外的验证器。我试过这个:

它没有用。我得到了例外:

有没有办法做到这一点?

0 投票
0 回答
349 浏览

jsf - 将 bean 作为 facelet 参数和后续复合组件传递会导致 'identifier''*'' 解析为 null' 异常

我有简单的复合组件button.xhtml

它在details.xhtml页面上使用:

details.xhtml页面包含在另一个页面中。注意actionBeanParam。它作为参数传递给details.xhtml. 该页面显示两个按钮(用于测试目的) - 第一个按钮只是检查复合组件是否工作。第二个按钮是我想要实现的:

最后支持bean:

当我按下顶部按钮时,它工作正常。在控制台中我看到:

参数:simpleButton

当我按下底部按钮(我的场景)时,它会引发异常:

javax.el.PropertyNotFoundException:JBWEB006016:目标不可达,标识符“actionBeanParam”解析为空:javax.faces.el.E​​valuationException:javax.el.PropertyNotFoundException:JBWEB006016:目标不可达,标识符“actionBeanParam”解析为空

我在这里发现了类似的问题:Managed Bean as Facelet parameter让复合组件阻止解析

但是我不能使用这个问题的解决方法,因为我的操作有一个参数

c:set我有一个解决方法来通过in重置参数details.xhtml

但是当details.xhtml包含不止一次时它会不正确。

我使用的是:JBoss EAP 6.2.1、Mojarra 2.1.19-jbossorg-1

有什么建议么?

0 投票
0 回答
34 浏览

jsf - JSF facelets ui:include 不起作用

我是 JSF 和 facelets 的新手。我正在尝试根据本教程创建一个 facelets 模板。中common.xhtml不显示任何文本header/content/footer.xhtml。我已经在 stackoverflow 上阅读了几篇与该主题相关的帖子,并根据这些帖子尝试了几种不同的 exp,但它们都不起作用。localhost:8080/AppName/templates/common.xhtml始终是空白页,但可以localhost:8080/AppName/templates/header.xhtml正确呈现。

任何帮助表示赞赏。我在这里错过了什么?

header.xhtml

footer.xhtml 和 content.xhtml 类似,因此在此省略。

common.xhtml

我尝试了以下 header.xhtml、templates/header.xhtml、./header.xhtml、#{request.contextPath}/templates/header.xhtml 但 common.xhtml 仍然显示空白页

项目文件结构:

web.xml

0 投票
0 回答
25 浏览

jsf - 当 JSF 包含一个页面时,它不工作但包含的直接值正在工作

在 JSF 页面中执行时,其保存功能正在工作,但在执行<ui:include src="#{initilizingBean.displaypageurl}"/>时,页面正在被包含,但包含页面的保存功能不起作用。

欢迎任何帮助。请帮助我。

0 投票
1 回答
172 浏览

jsf - JSF 递归 ui:include 在多个回发时混淆输出树

我有一份报告,它以可扩展的树格式显示大学课程注册信息。单击前缀时,它会显示带有摘要注册号的课程前缀和特定的课程注册号。该报告在首次运行时运行良好。但是,如果您决定为另一个会话再次运行报告,事情就会开始变得混乱。

运行报告一时,它是正确的。运行报告二时(对于不同的会话,相同的会话运行正常),请注意第二个有重复/缺失的元素。如果“首先”运行这两个报告,它们将正常工作,即在该用户会话中没有运行其他报告。

我正在使用递归包含的页面来构建树。这是来自报告页面本身的注册.xhtml 的相关代码:

包含的 reportTree.xhtml 代码(使用 CSS/jQuery 完成的树扩展代码):

支持 bean EnrollmentBean.java 的相关部分:

TreeNode 类是我创建的,它提供了对数据、父级和子级的简单跟踪。如果需要,我可以发布该代码,但我认为此时它是多余的。

在我对这个问题进行故障排除期间,我已经验证了在支持 bean 中构建报告树的 reportData 始终是正确的。通过使用 Logger 类,我验证了树的生成是否正确(通过将正在处理到树中的每一行写入服务器日志)。我什至通过在构建树后将树写到服务器日志来验证每次运行后 reportTreeData 是否正确。

我只能得出结论,JSF 生命周期的渲染响应阶段出了点问题,因为我确实注意到,如果我将支持 bean 从 更改@SessionScoped@RequestScoped,则每次都会正确生成报告。我不希望将此作为我的解决方案,因为我有一个“下载 CSV”链接,该链接使用支持 bean 中已经生成的报告数据,因此报告逻辑不需要重新运行来生成 CSV。

有谁知道为什么会发生这种情况以及我可以做些什么来纠正这种行为?我在 GlassFish Open Source Edition 4.1 (build 13) 上使用 JSF 2.2 和 Java EE 7

2015 年 12 月 24 日更新

我一直在逐步完成呈现响应阶段的 JSF 代码,似乎 EL 表达式只是在第二次运行报告时使用错误的数据进行评估。我可以看到它在哪里进行函数调用以评估 EL 表达式,并且它返回了错误的数据。我将尝试获取weld-osgi-bundle.jar 源代码,以便以后可以进入该函数调用。