You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Frank Lawlor <fr...@athensgroup.com> on 2001/12/03 20:31:49 UTC

Missing message for key index.title - My Problem Found

When I try to run the struts-example in Tomcat 4.0
(jre 1.3.1, NT 4, SP6) I get the infamous
Missing message for key index.title

I noticed tho, that the logs have an earlier exception
trying to load /WEB-INF/struts-config.xml:

2001-11-30 12:45:39 action: Initializing configuration from resource path
/WEB-INF/struts-config.xml
2001-11-30 12:45:39 StandardWrapper[/struts-example:action]: Marking servlet
action as unavailable
2001-11-30 12:45:39 StandardContext[/struts-example]: Servlet
/struts-example threw load() exception
javax.servlet.UnavailableException: Missing configuration resource for path
/WEB-INF/struts-config.xml
	at
org.apache.struts.action.ActionServlet.initMapping(ActionServlet.java:1316)
	at org.apache.struts.action.ActionServlet.init(ActionServlet.java:465)
  ...

The error is coming in ActionServlet.initMapping on the lines:
	InputStream input = getServletContext().getResourceAsStream(config);
	if (input == null)
	    throw new UnavailableException
		(internal.getMessage("configMissing", config));
Changing the first line to
	String path = getServletContext().getRealPath(config);
	input = new java.io.FileInputStream(path);
throws a security exception!
(it doesn't seem right that getServletContext().getResourceAsStream(config)
swallows this!)

I have security on and it isn't allowing file access!

Unfortunately, I can't see a "proper" fix for this.
It should be possible to fix it by granting
permission in catalina.policy, but the spec
to give struts.jar permission, e.g.:
  grant codeBase
"file:${catalina.home}/webapps/struts-example/WEB-INF/lib/-" {
     permission java.security.AllPermission;
  };

doesn't work because of a Tomcat bug loading
libraries from /WEB-INF/lib.

Moving the lib to <tomcat>/common/lib also
seems to have problems with derived classes
in the /WEB-INF/classes classes.

HOWEVER, the tomcat bug can be worked around
by exploding struts.jar
into your /WEB-INF/classes directory.

This may not be everyone's solution to the infamous
Missing message for key index.title
(see post "Missing message for key index.title - general comments").

Frank Lawlor
Athens Group, Inc.
(512) 345-0600 x151
Athens Group, an employee-owned consulting firm integrating technology
strategy and software solutions.




--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>