jsf - 在前端的下拉列表和搜索框中键入适当的搜索
问题描述
我使用了带有注释的自定义转换器类,例如@FacesConverter(forClass = Date.class)
覆盖前端中 Date 和 Boolean 对象的 JSF 默认字符串表示。我有两个问题:
Date 按预期工作——所有 Date 对象在前端都有一致的表示。但是,布尔值仅在我将注释更改为
@FacesConverter("mypackage.presentation.BooleanFormatConverter")
然后在我的 xhtml 中显式调用它时才有效,每次我想使用它时,如<f:converter converterId="mypackage.presentation.BooleanFormatConverter" />
.我正在将布尔值的字符串表示形式更改为是/否,并且我的数据表上的布尔列上有过滤框,其中包含这些字符串值。但是,它似乎没有认识到字符串值对应于布尔值 true/false。我不知道如何解决这个问题,除非在后端显式地将布尔值的类型更改为字符串,然后将它们视为我的数据表中的字符串列(出于其他原因,我宁愿保持类型不同并避免显式转换所有内容到后端的字符串)。
解决方案
最后非常简单,遵循 Kukeltje 的建议:支持 bean 中的布尔值(不需要每列完成)并更改 xhtml:
<p:selectCheckboxMenu value="#{myView.yesNoCheckbox}" label="Select" onchange="PF('tableE').filter()" scrollHeight="150" filter="true" filterMatchMode="contains">
<f:selectItem itemValue="#{true}" itemLabel="Yes"/>
<f:selectItem itemValue="#{false}" itemLabel="No" />
</p:selectCheckboxMenu>
唯一的缺点是这部分必须每列手动完成(我的数据表有大量的列,这就是为什么我想要一种简单的全局方法,例如转换器)。
推荐阅读
- python - 通过RESAMPLE检查用户留存的解决方案
- powerbi - Power BI 中的预测分析如何工作?
- hibernate - H2 数据库 Json 字段休眠转换器异常
- html - 如何从其中一个表行中获取数据
- excel - 将 Crashlytics(不是 Firebase)数据导出到 Excel
- visual-studio-code - 可视代码快捷键导航搜索侧边栏?
- spring-security - 求Spring Cloud数据流安全示例
- autodesk-forge - 关于modelderivative API中fragid的一致性
- javascript - 将标签文本值与 jquery 中的变量进行比较
- c++ - Why there is no output showing on my codeblocks?