【发布时间】:2015-12-23 09:00:57
【问题描述】:
我正在使用ValidationRulesServlet 为我的 API 生成 valdr JSON。目前生成的 JSON 如下所示:
{
"Person" : {
"firstName" : {
"size" : {
"min" : 2,
"message" : "{javax.validation.constraints.Size.message}",
"max" : 2147483647
},
"required" : {
"message" : "{javax.validation.constraints.NotNull.message}"
}
},
"lastName" : {
"size" : {
"min" : 2,
"message" : "{javax.validation.constraints.Size.message}",
"max" : 20
},
"required" : {
"message" : "{javax.validation.constraints.NotNull.message}"
}
}
}
}
我将 Jersey 用于我的 REST 服务,我希望将上述 JSON 中的 messages 替换为来自 ValidationMessages.properties 的值。
我的 ValidationMessages.properties 位于类路径 (src/main/resources) 中,并且被 Jackson 正确使用。这可以通过调用具有无效值的 REST 端点来确认。这是一个示例响应:
[
{
"message": "Must be between 2 and 2147483647 characters",
"messageTemplate": "{javax.validation.constraints.Size.message}",
"path": "PersonServiceImpl.updatePerson.arg0.firstName",
"invalidValue": ""
}
]
我ValidationMessages.properties中对应的消息是
javax.validation.constraints.Size.message = Must be between {min} and {max} characters
如何让 valdr JSON 从ValidationMessages.properties 输出消息,而不是例如{javax.validation.constraints.Size.message}?
【问题讨论】: