ActionMessages messages = new ActionMessages();
messages.add("name", new ActionMessage("text.error.name"));
saveMessages(request, messages);我想请问一下,如果我有多个资源文件,而text.error.name属性写在errorMessage.properties里面,那我需要怎样设置才行呀?
请大家帮帮忙解决问题

解决方案 »

  1.   

    我的text.error.name以前在ApplicationResources.properties里面的时候,一切都正常。可放到errorMessage.properties里面就出错啦。
    希望大家帮帮我,告诉我要修改哪些地方。。
    然后,网页上显示信息的时候要不要修改?
      

  2.   

    看看ActionMessage类的帮助文档,看有没有一个重载的构造方法,其中带有接收一个用于指定资源包的参数,如果有,则成了,否则,只能改别的招了。
    先用getMessage方法获得资源内容,再用这个内容取构造ActionMessage。
      

  3.   

    两种途径通知Struts你的资源包的位置:web.xml 文件或者struts-config.xml 文件。首先来看web.xml 文件的配置: <servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>
        org.apache.struts.action.ActionServlet
    </servlet-class>
    <init-param>
    <param-name>
        application
    </param-name>
    <param-value>
        com.systemmobile.example.ApplicationResources
    </param-value>
    </init-param>
    </servlet>这个配置说明你的资源包的名字是ApplicationResources.properties,它位于com.systemmobile.example 包中。后缀".properties" 是隐含的,你不必显式地写出来。如果你还有另一个资源文件在相同的包中,例如ApplicationResources_fr.properties ,用来支持法语,你只需要象上面定义的那样列出文件名字即可。 定义资源文件的第二种方法,是在struts-config.xml 文件中配置: <message-resources parameter="com.systemmobile.example.ApplicationResources"/>属性parameter 是必须的。和在web.xml文件中配置一样, 需要注意的是文件在包中的位置。 使用struts-config.xml 文件来配置消息资源文件是推荐的做法,因为它更有可扩展性,更灵活。 你可以使用message-resources 标签从不同的资源文件取不同的消息,前提是在配置的时候为不同的资源文件给出不同的key 属性的值。例如: <message-resources key="myResources" parameter="com.systemmobile.example.ApplicationResources"/>
    <message-resources key="moreResources" parameter="com.systemmobile.example.MoreApplicationResources"/>
    然后你必须这样使用bean:message 标签: <bean:message bundle="moreResources" key="some.message.key"/>
      

  4.   

    报什么错啊。加载那个properties文件不就可以了
      

  5.   

    报什么错啊。加载那个properties文件不就可以了