JSF 2.0: 和默认转换器(JSF 2.0: and default conver

2019-09-20 02:57发布

我想用一个标准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实例化转换器或我必须手动将它实例化(在某些豆)?

Answer 1:

该转换器1D是javax.faces.DateTime ,所以尝试

<f:viewParam
  converter="javax.faces.DateTime"
... />


文章来源: JSF 2.0: and default converters