想象一下以下表单/bean:
public class MyForm {
private BankAccountNumber accountNumber;
// getter + setter
}
哪里BankAccountNumber
是自定义值对象。
当我将 metawidget 和 jsf 与此类的实例一起使用时,不会为该accountNumber
属性生成输入字段(仅显示标签)。
问题是 metawidget 不知道类型,也不知道应该使用BankAccountNumber
哪种类型。UIInput
到目前为止,我发现的唯一解决方案是注释我的属性@UiAttribute(name = "type", value = "java.lang.String")
并javax.faces.Converter
注册BankAccountNumber
该类。这样,metawidget 会生成一个HtmlnputText
.
这是最好的解决方案吗?
我想我也可以注册自己InspectionResultProcessor
的更改BankAccountNumber
到String
任何地方,但我什至不知道将我的自定义类型映射到String
是否是正确的方法。