私たちの宣言:
<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basenames">
<list>
<value>WEB-INF/classes/caasMessages</value>
</list>
</property>
<property name="useCodeAsDefaultMessage" value="true" />
<property name="defaultEncoding" value="UTF-8"/>
</bean>
classpath:caasMessages を試しましたが、caasMessages だけを試しました。実際のファイルは WEB-INF/classes にあり、caasMessages.properties、caasMessages_es.properties などが含まれます。
エラー:
javax.servlet.jsp.JspTagException: No message found under code 'screen.confirmLoginStats.title' for locale 'en_US'.
at org.springframework.web.servlet.tags.MessageTag.doStartTagInternal(MessageTag.java:184)
at org.springframework.web.servlet.tags.RequestContextAwareTag.doStartTag(RequestContextAwareTag.java:79)
at org.apache.jsp.WEB_002dINF.view.jsp.ssn.casLoginView_jsp._jspx_meth_spring_005fmessage_005f0(casLoginView_jsp.java:403)
at org.apache.jsp.WEB_002dINF.view.jsp.ssn.casLoginView_jsp._jspService(casLoginView_jsp.java:105)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
等々。
私たちは、メッセージが caasMessages.properties にあることを本当に、本当に、本当に確信しています。そして、タイトルで述べたように、これは Tomcat が JDK6 で実行されている場合は正常に動作しますが、示されているように JDK7 では失敗します。