javax.faces.component.UIInput.CONVERSION vs javax.faces.converter.*

Stu*_*ent 4 jsf localization properties converter type-conversion

jsf-api.jar包含各种本地化的Messages.properties文件,这些文件一方面包含javax.faces.component.UIInput.CONVERSION密钥,另一方面包含各种javax.faces.converter.*密钥.

我的问题是:

  • 何时使用第一个密钥,何时使用第二个密钥?
  • 这记录在哪里?

Bal*_*usC 5

javax.faces.component.UIInput.CONVERSIONConverterException不包含faces消息且组件未指定converterMessage属性时,将使用该消息.换句话说,它是默认/回退消息.消息标识符由UIInput#CONVERSION_MESSAGE_ID常量指定,其记录如下:

CONVERSION_MESSAGE_ID

public static final java.lang.String CONVERSION_MESSAGE_ID

FacesMessage如果发生转换错误,则要创建的消息标识符,页面作者和ConverterException提供者都不提供消息.

也可以看看:

常数字段值


javax.faces.converter.*当在消息标识符指定标准JSF转换器出现故障的特定转换任务的消息将被使用.标准JSF转换器列在javax.faces.convert包摘要的类摘要中.例如java.faces.converter.DateTimeConverter.*消息标识符将被用于通过DateTimeConverter其具有在其字段摘要中列出一些类似消息标识符常量DateTimeConverter#DATE_ID用的恒定值"javax.faces.converter.DateTimeConverter.DATE"记录如下:

DATE_ID

public static final java.lang.String DATE_ID

FacesMessage转换Date失败时要创建的消息标识符.此消息的消息格式字符串可以选择包含以下占位符:

  • {0} 取而代之的是未转换的价值.
  • {1} 由示例值替换.
  • {2}由a替换,String其值是生成此消息的输入组件的标签.

也可以看看:

常数字段值

请注意,JSF规范的第2.5.2.4节中列出了所有消息标识符.另请参阅JSF转换器资源包消息以获取副本.