spring mvc:无法解析占位符中的动态值
我正在将project Struts1迁移到spring mvc。spring mvc:无法解析占位符中的动态值,spring,spring-boot,spring-mvc,Spring,Spring Boot,Spring Mvc,我正在将project Struts1迁移到spring mvc。 在struts中,由struts-config.xml中的消息资源执行错误处理 消息.属性 login.error.missingValue=请为{0}提供一个值。 login.error.missingValues=请为以下字段提供值:{0} ActionClass addError(请求,新操作错误(缺少值错误,缺少,新整数(缺少计数)) 在第二个参数中,用户传递动态值,如用户名/密码。 我在spring mvc中尝试了以
消息.属性
login.error.missingValue=请为{0}提供一个值。
login.error.missingValues=请为以下字段提供值:{0}
ActionClass
addError(请求,新操作错误(缺少值错误,缺少,新整数(缺少计数))代码>
在第二个参数中,用户传递动态值,如用户名/密码。
我在spring mvc中尝试了以下内容……但无法获得动态值。
springservlet.xml
@控制器
@Value(“${login.error.missingValue}”)
私有字符串缺少\u值\u错误
春季我的产量低于产量。
请为{0}提供一个值。
我想用动态值替换{0},如…用户名/密码等。
请帮助我在春季MVC中该怎么做?
提前感谢。spring和struts都提供了错误消息处理机制,并将其呈现给客户端浏览器
两者做同样的事情,但方式不同,但目的不同。
如果使用struts表示前端,那么应该使用struts消息资源方式将错误消息呈现回客户端
关于您的错误和问题:
您自动连接了一个定义为属性资源的值,该值由spring属性占位符处理,该占位符希望在启动时存在一个值(想象一下使用一个缺少值的普通属性文件而不是消息资源)
为了修复上述错误,您需要遵守默认的spring消息源查找(因为您的自动连线值不是属性,而是消息)
要使其起作用,您必须定义以下内容:
<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="basename">
<value>messages</value>
</property>
</bean>
信息
然后自动连接MessageSource并从中获取动态值
您可以找到更多示例spring和struts都提供了错误消息处理机制,并将它们呈现给客户端浏览器
两者做同样的事情,但方式不同,但目的不同。
如果使用struts表示前端,那么应该使用struts消息资源方式将错误消息呈现回客户端
关于您的错误和问题:
您自动连接了一个定义为属性资源的值,该值由spring属性占位符处理,该占位符希望在启动时存在一个值(想象一下使用一个缺少值的普通属性文件而不是消息资源)
为了修复上述错误,您需要遵守默认的spring消息源查找(因为您的自动连线值不是属性,而是消息)
要使其起作用,您必须定义以下内容:
<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="basename">
<value>messages</value>
</property>
</bean>
信息
然后自动连接MessageSource并从中获取动态值
你可以找到更多的例子