小编Alm*_*pos的帖子

如何使用我的.properties文件中的自定义消息,但使用@Size注释提供的参数?

这应该是一个简单的问题,但我找不到直接的解决方案.

我正在使用Spring Message Resource从.properties文件中提供我系统上的所有文本.我需要那些国际化问题,不能使用Spring的默认消息.

这是问题所在:

我的.properties文件中有以下行:

validator_invalid_state_name=Invalid name ({min}, {max})
Run Code Online (Sandbox Code Playgroud)

验证码是:

@Size( min=3, max=5, message="validator_invalid_state_name" )
public String name;
Run Code Online (Sandbox Code Playgroud)

但是,当向字段发送无效值时,消息为:

"无效的名称({min},{max})"而不是 "无效的名称(3,5)".

我尝试了几种解决方案但没有成功,例如:

@Size( min=3, max=5, message="{validator_invalid_state_name}" )
@Size( min=3, max=5, message="${validator_invalid_state_name}" )
@Size( min=3, max=5, message="Size.name" ) // with "Size.name=Invalid name ({min}, {max})" in my .properties file
@Size( min=3, max=5, message="{Size.name}" ) //idem
Run Code Online (Sandbox Code Playgroud)

但如果我只使用

@Size( min=3, max=5 )
Run Code Online (Sandbox Code Playgroud)

然后,我从Spring获取默认消息(我不想使用).我需要的是非常简单:从我的自定义.properties文件中使用我自己的消息,但使用@Size注释提供的参数.

有什么建议?

先感谢您.

java spring spring-mvc spring-messaging

4
推荐指数
1
解决办法
8101
查看次数

标签 统计

java ×1

spring ×1

spring-messaging ×1

spring-mvc ×1