我希望使用标准的JSF转换器(javax.faces.convert.DateTimeConverter
)来处理视图参数。
根据文档:
您可以通过类或其ID引用组件标记的转换器属性引用转换器。ID在应用程序配置资源文件中定义。
我尝试了以下代码:
<f:viewParam
name = "rangeStartCreationDate"
value = "#{doiListController.model.rangeStartCreationDate}"
converter = "javax.faces.convert.DateTimeConverter"
/>
但是我遇到了问题。
javax.faces.FacesException: Expression Error: Named Object: javax.faces.convert.DateTimeConverter not found.
我接着尝试了第二个选项(通过ID)。我在faces-config.xml
中定义了转换器。
<converter>
<converter-id>DateTimeConverter</converter-id>
<converter-class>javax.faces.convert.DateTimeConverter</converter-class>
</converter>
并使用了ID
<f:viewParam
name = "rangeStartCreationDate"
value = "#{doiListController.model.rangeStartCreationDate}"
converterId = "DateTimeConverter"
/>
在这种情况下,我获得
Conversion Error setting value 'Tue Jul 24 00:00:00 CEST 2012' for 'null Converter'.
有没有办法让JSF实例化转换器,还是我必须手动实例化它(在某个bean中)?
converter="javax.faces.DateTime"
。 - Adam