今天在学习利用Struts1进行开发学习的时候,使用bean:write标签取出对象中的int、float等类型的数据时,总是提示如下的错误:
十月 21, 2015 10:11:12 下午 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet jsp threw exception
javax.servlet.jsp.JspException: Cannot find message resources under key org.apache.struts.action.MESSAGE
at org.apache.struts.taglib.TagUtils.retrieveMessageResources(TagUtils.java:1112)
at org.apache.struts.taglib.TagUtils.message(TagUtils.java:956)
at org.apache.struts.taglib.TagUtils.message(TagUtils.java:936)
at org.apache.struts.taglib.bean.WriteTag.retrieveFormatString(WriteTag.java:264)
at org.apache.struts.taglib.bean.WriteTag.formatValue(WriteTag.java:325)
at org.apache.struts.taglib.bean.WriteTag.doStartTag(WriteTag.java:241)
at org.apache.jsp.WEB_002dINF.bean_jsp._jspx_meth_bean_005fwrite_005f3(bean_jsp.java:191)
at org.apache.jsp.WEB_002dINF.bean_jsp._jspService(bean_jsp.java:98)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
<span style="font-family:Microsoft YaHei;font-size:18px;color:#ff0000;"> Cannot find message resources under key org.apache.struts.action.MESSAGE</span>
一直以为是自己哪里弄错了,最后在网上搜索了一下,原来有如下解决方法:
第一种解决方式:
只要指定标签的format为#就可以解决
<bean:write name="c1" property="age" format="#"/>
<bean:write name="c1" property="weight" format="#"/>
第二种解决方式:
strtus-config.xml配置的问题,里面没有配置<message-resources parameter=" "/>
将该属性配置上以后,也可以解决上面的问题。