Java Struts 1.2.9-关于自定义国际化的问题
我们有一个使用Struts 1.2.9的遗留应用程序。该应用程序目前以标准方式国际化-Java Struts 1.2.9-关于自定义国际化的问题,java,internationalization,customization,struts-1,Java,Internationalization,Customization,Struts 1,我们有一个使用Struts 1.2.9的遗留应用程序。该应用程序目前以标准方式国际化-.properties文件,用于所有UI标签、错误、消息等定义在所有JSP中的用法。到目前为止,这种方法一直很有效,但事实上,应用程序本身是一个框架,用于数百个(是的,100个!)其他应用程序内部使用的服务 我们需要扩展i18n功能,如下所示: 为.properties文件定义一个自定义目录-这样就超出了类路径的范围;基本上不在.war包中。其思想是只支持消息字符串更改,而不需要重新部署整个应用程序 此自定义目
.properties
文件,用于所有UI标签、错误、消息等<使用默认的Factory
和MessageResources
定义对struts config.xml
中的每个.properties文件进行编码>定义<代码>在所有JSP中的用法。到目前为止,这种方法一直很有效,但事实上,应用程序本身是一个框架,用于数百个(是的,100个!)其他应用程序内部使用的服务
我们需要扩展i18n功能,如下所示:
.properties
文件定义一个自定义目录-这样就超出了类路径的范围;基本上不在.war
包中。其思想是只支持消息字符串更改,而不需要重新部署整个应用程序Locale
设置-排除所有其他考虑因素(默认堆栈、类路径/包查找等),这类似于I18nInterceptor
在Struts2中使用requestOnlyParameterName
属性设置为true
的方式TIA。我在spring项目中也有类似的需求,不仅是i18n,还有web服务端点和其他类型的属性 我们通过将放置属性文件的目录添加到服务器启动配置文件的类路径中来实现这一要求 在WebLogic11G(预生产和生产)和tomcat服务器(开发环境)中测试和工作
希望有助于实现您自己的MessageResources和MessageResourcesFactory。想法?谢谢你的建议,弗朗西斯科。如果我没记错的话,在定义时,定义要从中拾取属性文件的包名称。如果我有一个包含许多子目录的根目录,每个子目录可能包含多个bundle,那么我认为仅此类路径设置是行不通的。您将需要一种机制,通过该机制,应该从根目录下该应用程序的相应目录中选择每个请求、区域设置以及相应的属性包。