使用自定义属性加载器来覆盖struts消息

时间:2012-08-05 06:32:02

标签: file-upload properties struts2

我有一个Spring 3和struts 2的应用程序。我有自己的属性文件和自定义消息。启动时弹簧会动态加载这些文件。我从代码中的任何位置使用PropertyCache.getMessage()来获取这些自定义消息。这些消息资源完全由我的应用程序和spring控制。

现在我有一个文件上传方案。上传限制是在全局struts常量和“fileUpload”拦截器中配置的。根据理论,当用户尝试上传大文件时,框架将显示其消息(我知道如何使用struts自定义它)。

由于我使用自己的资源,我想使用自己的“PropertyCache”显示我的自定义消息(不会使用“ struts.messages.error.file.too.large ”) .getMessage()“方法。

如何覆盖struts错误消息,以便框架从我自己的资源而不是struts constant / struts全局属性中获取消息?

1 个答案:

答案 0 :(得分:1)

我没有看到任何直接的解决方案,因为上面的消息是在fileUploader拦截器下设置的,很可能会有更灵活和最好的解决方案。

目前我建议您创建一个FileUploaderInterceptor,然后您可以使用Spring消息阅读器功能从自定义消息文件中读取消息并替换Struts2 getTextMessage()方法

  1. FileUploadInterceptor