4

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

我的问题是:

  • 什么时候用第一把钥匙,什么时候用第二把钥匙?
  • 这是在哪里记录的?
4

1 回答 1

5

当不包含 faces 消息并且组件没有指定属性javax.faces.component.UIInput.CONVERSION时,将使用该消息。换句话说,它是默认/后备消息。消息标识符由常量指定,该常量记录如下:ConverterExceptionconverterMessageUIInput#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 转换器资源包消息以获取副本。

于 2013-03-21T14:40:54.773 回答