I'm using 1.2.4, with Tiles. (I don't know whether Tiles is relevant, but you might as well know!)
I've got
<global-exceptions>
<exception key="error.general"
type="java.lang.Exception" path="/WEB-INF/globalError.jsp"/>
</global-exceptions>
in my struts-config.xml, which catches exceptions in my Action classes, and redirects them to an error page.
But if I make a mistake in a tile, such as referring to a non-existant bean, or property, I still get a stack trace thrown back to the user.
eg. if I add a spurious <bean:write name="fred"/> I get a page showing: 500 Internal Server Error javax.servlet.jsp.JspException: Cannot find bean fred in any scope at org.apache.struts.taglib.TagUtils.lookup(TagUtils.java:992) at org.apache.struts.taglib.bean.WriteTag.doStartTag(WriteTag.java:227) at _web_2d_inf._pages._login._jspService(login.jsp:9) [/WEB-INF/pages/login.jsp] at oracle.jsp.runtime.HttpJsp.service(HttpJsp.java:139) ...
Any suggestions as to whether I can configure Struts to capture this (rather than configuring the container, which I also don't know how to do!)?
There's really not much Struts can do at this point, because control has been transferred to the JSP.
About the best you can do is judicious application of the JSTL c:catch tag.
In this case, you could also use c:out instead of bean:write and at least it wouldn't throw an exception; it would just not include any content.
Joe
--
Joe Germuska [EMAIL PROTECTED] http://blog.germuska.com "Narrow minds are weapons made for mass destruction" -The Ex
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]

