我目前在使用PrimeFaces 4.0的dataTable中的列的呈现属性上有一个小问题。我的表中有一列不应该总是显示,所以我使用了它的呈现属性并从我的支持bean中获取值。这是第6列也是最后一列。dataTable位于一个p:对话框中,该对话框将显示在方法的末尾。
渲染属性似乎工作正常,因为当showColumn为false时,该列将不会显示,反之亦然,但存在一个问题。如图所示,“未找到记录”。消息似乎直到最后一列才到达。当我尝试删除呈现的属性,或手动将其设置为true(不使用支持bean值)时,“找不到记录”。消息将按预期到达最后一列。
包含这些元素的整个对话框/表单似乎在ajax请求后得到了正确更新。
支持Bean方法:
public void getStatus(final MyClass foo, boolean showColumn) {
updateForm(foo);
setShowColumn(showColumn);
RequestContext.getCurrentInstance().execute("dailyStatus.show();");
}
xhtml中的列部分:
<p:column headerText="Problematic Column" styleClass="tablecenter" rendered="#{myMBean.showColumn}">
<p:commandLink id="view"
action="#{myMBean.doSomething}" update="@form"
rendered="#{obj.status.equals('FAILED')? 'true' : 'false'}"
onclick="spin_start()" oncomplete="spin_stop()">
<h:graphicImage name="images/restart.png" styleClass="icon" />
</p:commandLink>
</p:column>
对于PrimeFaces 4.0,有一个“解决方案”,我使用jQuery对问题进行了黑客般的修复。对于最近的PrimeFaces版本,这已经修复
当需要显示动态列时,我在支持bean中使用标志,然后调用此方法。(如本期所述,datatable的列表应为null或空)
RequestContext.getCurrentInstance().execute("$('[id=\"myForm:myDataTable\"] tr.ui-widget-content td').attr('colspan', 6);");
这会强制标题行之后的行上的单个td colspan到达最后一个标题列。希望这能帮助将来遇到此问题的其他人!
问题内容: 我的名字和姓氏后面都有空格。我有两个SQL查询-即使我没有空格搜索,第一个查询也会返回结果。(第一个查询返回了不想要的结果)。 此行为在所有版本的SQL Server中都一致吗? 这是已知行为吗?难道在任何地方记录的? 代码 问题答案: 请参阅http://support.microsoft.com/kb/316626 SQL Server遵循有关如何将字符串与空格进行比较的ANSI
JSF的 @ViewScoped不可用,因为它与CDI冲突 提交表单时,JSF动态呈现组件的值变为空 有条件呈现的输入组件不更新值 未调用CommandButton/CommandLink/Ajax操作/Listener方法或未更新输入值 我能想到导致这种行为的几种情况: “rendered”似乎是基于backing bean中的值重新计算的,而不是UI中给出的新值(如果默认为1,则提交时再次为1
我仍然没有发现正在发生的事情,但以下是我目前发现并做的事情: 1)log4j.xml文件格式不正确:缺少DOCTYPE,有多个布局,某些布局类不正确。 2)我已在命令行中指定了log4j.xml文件的路径;3)对DOMConfigurator和PropertyConfigurator的几次调用,我已将它们删除。 我将研究范围缩小到一个基于线程ID创建动态日志文件的类。在执行该类中的代码之前,log
如何使用JSX进行条件渲染? 例如,我这里有div,如果props的值为null,我想呈现文本“不知道”,否则如果props不等于null,则呈现props。 例如: 我试过了,但没有成功。知道我做错了什么吗? 提前感谢!
问题内容: 我有一种写入日志文件的方法。如果文件存在,则应将其追加到文件中,否则,我希望它创建一个新文件。 我要检查是否可以创建文件。文件是一个java.io.File对象。createNewFile引发IOException:没有此类文件或目录。自从我几周前编写此方法以来,该方法一直非常有效,直到最近才开始执行此方法,尽管我不知道自己可以更改什么。我检查了该目录是否存在,并且我拥有该目录的写权限
我正在尝试Flink对从CSV文件加载的(排序的)时间戳事件进行基本聚合。 我告诉Flink使用活动时间: 然后我在KeyedStream上使用一个时间窗口 问题是,将窗口更改为10分钟实际上会在该时间过后打印结果! 我的理解是,通过明确告诉Flink使用时间戳字段作为事件时间,操作将不依赖于机器上的实时性。我错过什么了吗?