You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Martin Cooper <ma...@tumbleweed.com> on 2001/03/05 04:20:41 UTC

Re: Cannot find message resources under key org.apache.struts.action.MESSAGE

> Why does struts eschew the ResourceBundle for a homebrew framework?

The problem, as I understand it, boils down to the fact that ResourceBundle
does not implement Serializable.

Struts stores application resources in the session. However, some containers
require that objects stored in the session implement Serializable in order
for the web app to be distributable. Since ResourceBundle does not meet this
requirement, a new implementation was constructed which does. (Originally,
Struts did indeed use ResourceBundle for its resources.)

--
Martin Cooper


----- Original Message -----
From: "Jeff Schnitzer" <je...@infohazard.org>
To: <st...@jakarta.apache.org>
Sent: Saturday, March 03, 2001 3:59 AM
Subject: RE: Cannot find message resources under key
org.apache.struts.action.MESSAGE


The problem is that the Orion classloader does not implement
getResourceAsStream().  It's been logged in Orion's bugzilla.

There are workarounds posted in the struts-user and orion-interest
archives, mostly involving packaging the application in funny ways.
Yuck.

This was a brief conversation on the Orion list, but it's probably more
appropriate here:

Why does struts eschew the ResourceBundle for a homebrew framework?

Jeff

>-----Original Message-----
>From: G.L. Grobe [mailto:gary@grobe.org]
>Sent: Saturday, March 03, 2001 1:27 AM
>To: struts-user@jakarta.apache.org
>Subject: Cannot find message resources under key
>org.apache.struts.action.MESSAGE
>
>
>Just started learning struts. I'm using orion server 1.4.5.
>I've got the
>struts.jar in my ~/WEB-INF/lib dir and have listed the taglibs in the
>~/WEB-INF/web.xml file as well as included all the *.tld in
>this same dir.
>  <taglib>
>      <taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>
>      <taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
>   </taglib>
>
>   <taglib>
>      <taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>
>      <taglib-location>/WEB-INF/struts-html.tld</taglib-location>
>   </taglib>
>...
>
>When running the following page, I get the error list down below:
>I've also got a file called 'myProps.properties' packaged under the
>~/WEB-INF/classes/com.mydir1/mydir2/resources dir.
>
>-------- index.jsp -----------------------------------
><%@ page language="java" %>
><%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
><%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
>
><html:html>
><head>
><title>
>   <bean:message key="main.title" />
></title>
></head>
>
><body>
><html:errors />
>
>This is a atest.
></body>
></html:html>
>
>----------- error output -------------------------
>
>500 Internal Server Error
>javax.servlet.jsp.JspException: Cannot find message resources under key
>org.apache.struts.action.MESSAGE at
>org.apache.struts.util.RequestUtils.message(RequestUtils.java, Compiled
>Code) at
>org.apache.struts.taglib.bean.MessageTag.doStartTag(MessageTag.java,
>Compiled Code) at /index.jsp._jspService(/index.jsp.java,
>Compiled Code) at
>com.orionserver.http.OrionHttpJspPage.service(JAX, Compiled Code) at
>com.evermind.server.http.HttpApplication.xj(JAX, Compiled Code) at
>com.evermind.server.http.JSPServlet.service(JAX, Compiled Code) at
>com.evermind.server.http.d3.sw(JAX, Compiled Code) at
>com.evermind.server.http.d3.su(JAX, Compiled Code) at
>com.evermind.server.http.ef.s1(JAX, Compiled Code) at
>com.evermind.server.http.ef.do(JAX, Compiled Code) at
>com.evermind.util.f.run(JAX, Compiled Code)
>
>
>Any help much appreciated.
>
>