newbie question: Missing message for key index.title error
Hi Everyone, Could anyone please tell me why I am getting the following error message when trying to run the 'blank' example that comes with Struts? Cheers, John Error 500 An error has occured while processing request:http://localhost:8080/blank/index.jsp Message: Server caught unhandled exception from servlet [jsp]: Missing message for key index.title Target Servlet: jsp StackTrace: Root Error-1: Missing message for key index.title javax.servlet.jsp.JspException: Missing message for key index.title java.lang.Throwable(java.lang.String) java.lang.Exception(java.lang.String) javax.servlet.jsp.JspException(java.lang.String) int org.apache.struts.taglib.bean.MessageTag.doStartTag() void blank._index_xjsp_jspsrc_910258570._jspService(javax.servlet.http.HttpServle tRequest, javax.servlet.http.HttpServletResponse) void org.apache.jasper.runtime.HttpJspBase.service(javax.servlet.http.HttpServlet Request, javax.servlet.http.HttpServletResponse) void javax.servlet.http.HttpServlet.service(javax.servlet.ServletRequest, javax.servlet.ServletResponse) void org.apache.jasper.runtime.JspServlet$JspServletWrapper.service(javax.servlet .http.HttpServletRequest, javax.servlet.http.HttpServletResponse, boolean) void org.apache.jasper.runtime.JspServlet.serviceJspFile(javax.servlet.http.HttpS ervletRequest, javax.servlet.http.HttpServletResponse, java.lang.String, java.lang.Throwable, boolean) void org.apache.jasper.runtime.JspServlet.service(javax.servlet.http.HttpServletR equest, javax.servlet.http.HttpServletResponse) void javax.servlet.http.HttpServlet.service(javax.servlet.ServletRequest, javax.servlet.ServletResponse) void com.ibm.servlet.engine.webapp.StrictServletInstance.doService(javax.servlet. ServletRequest, javax.servlet.ServletResponse) void com.ibm.servlet.engine.webapp.StrictLifecycleServlet._service(javax.servlet. ServletRequest, javax.servlet.ServletResponse) void com.ibm.servlet.engine.webapp.IdleServletState.service(com.ibm.servlet.engin e.webapp.StrictLifecycleServlet, javax.servlet.ServletRequest, javax.servlet.ServletResponse) void com.ibm.servlet.engine.webapp.StrictLifecycleServlet.service(javax.servlet.S ervletRequest, javax.servlet.ServletResponse) void com.ibm.servlet.engine.webapp.ServletInstance.service(javax.servlet.ServletR equest, javax.servlet.ServletResponse, com.ibm.servlet.engine.webapp.WebAppServletInvocationEvent) void com.ibm.servlet.engine.webapp.ValidServletReferenceState.dispatch(com.ibm.se rvlet.engine.webapp.ServletInstanceReference, javax.servlet.ServletRequest, javax.servlet.ServletResponse, com.ibm.servlet.engine.webapp.WebAppServletInvocationEvent) void com.ibm.servlet.engine.webapp.ServletInstanceReference.dispatch(javax.servle t.ServletRequest, javax.servlet.ServletResponse, com.ibm.servlet.engine.webapp.WebAppServletInvocationEvent) void com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.handleWebAppDispatch(c om.ibm.servlet.engine.webapp.WebAppRequest, javax.servlet.http.HttpServletResponse, boolean) void com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.dispatch(javax.servlet .ServletRequest, javax.servlet.ServletResponse, boolean) void com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.forward(javax.servlet. ServletRequest, javax.servlet.ServletResponse) void com.ibm.servlet.engine.srt.WebAppInvoker.handleInvocationHook(java.lang.Obje ct) void com.ibm.servlet.engine.invocation.CachedInvocation.handleInvocation(java.lan g.Object) void com.ibm.servlet.engine.invocation.CacheableInvocationContext.invoke(java.lan g.Object) void com.ibm.servlet.engine.srp.ServletRequestProcessor.dispatchByURI(java.lang.S tring, com.ibm.servlet.engine.srp.ISRPConnection) void com.ibm.servlet.engine.oselistener.OSEListenerDispatcher.service(com.ibm.ser vlet.engine.oselistener.api.IOSEConnection) void com.ibm.servlet.engine.http_transport.HttpTransportHandler.handleConnection( java.net.Socket) void com.ibm.servlet.engine.http_transport.HttpTransportHandler.run() void java.lang.Thread.run() Wrapped Error-2: Missing message for key index.title javax.servlet.ServletException: Missing message for key index.title java.lang.Throwable(java.lang.String) java.lang.Exception(java.lang.String) javax.servlet.ServletException(java.lang.Throwable) void org.apache.jasper.runtime.PageContextImpl.handlePageException(java.lang.Exce ption) void blank._index_xjsp_jspsrc_910258570._jspService(javax.servlet.http.HttpServle tRequest, javax.servlet.http.HttpServletResponse) void org.apache.jasper.runtime.HttpJspBase.service(javax.servlet.http.HttpServlet Request, javax.servlet.http.HttpServletResponse) void javax.servlet.http.HttpServlet.service(javax.servlet.ServletRequest, javax.servlet.ServletResponse) void org.apache.jasper.runtime.JspServlet$JspServletWrapper.service(javax.servlet .http.HttpServletRequest, javax.servlet.http.HttpServletResponse, boolean) void org.apache.jasper.runtime.JspServlet.serviceJspFile(javax.servlet.http.HttpS ervletRequest, javax.servlet.http.HttpServletResponse,
Re: newbie question: Missing message for key index.title error
Hello John, You must place string for key index.title to the your resources. Name for the resource bundle is in parameter application in servlet description for ActionServlet in web.xml. Wednesday, June 20, 2001, 12:55:40 PM, you wrote: ONJH Hi Everyone, ONJH Could anyone please tell me why I am getting the following error message ONJH when trying to run the 'blank' example that comes with Struts? ONJH Cheers, ONJH John ONJH Error 500 ONJH An error has occured while processing ONJH request:http://localhost:8080/blank/index.jsp ONJH Message: Server caught unhandled exception from servlet [jsp]: Missing ONJH message for key index.title ONJH Target Servlet: jsp ONJH StackTrace: ONJH Root Error-1: Missing message for key index.title ONJH javax.servlet.jsp.JspException: Missing message for key index.title ONJH java.lang.Throwable(java.lang.String) java.lang.Exception(java.lang.String) ONJH javax.servlet.jsp.JspException(java.lang.String) int ONJH org.apache.struts.taglib.bean.MessageTag.doStartTag() void ONJH blank._index_xjsp_jspsrc_910258570._jspService(javax.servlet.http.HttpServle ONJH tRequest, javax.servlet.http.HttpServletResponse) void ONJH org.apache.jasper.runtime.HttpJspBase.service(javax.servlet.http.HttpServlet ONJH Request, javax.servlet.http.HttpServletResponse) void ONJH javax.servlet.http.HttpServlet.service(javax.servlet.ServletRequest, ONJH javax.servlet.ServletResponse) void ONJH org.apache.jasper.runtime.JspServlet$JspServletWrapper.service(javax.servlet ONJH .http.HttpServletRequest, javax.servlet.http.HttpServletResponse, boolean) ONJH void ONJH org.apache.jasper.runtime.JspServlet.serviceJspFile(javax.servlet.http.HttpS ONJH ervletRequest, javax.servlet.http.HttpServletResponse, java.lang.String, ONJH java.lang.Throwable, boolean) void ONJH org.apache.jasper.runtime.JspServlet.service(javax.servlet.http.HttpServletR ONJH equest, javax.servlet.http.HttpServletResponse) void ONJH javax.servlet.http.HttpServlet.service(javax.servlet.ServletRequest, ONJH javax.servlet.ServletResponse) void ONJH com.ibm.servlet.engine.webapp.StrictServletInstance.doService(javax.servlet. ONJH ServletRequest, javax.servlet.ServletResponse) void ONJH com.ibm.servlet.engine.webapp.StrictLifecycleServlet._service(javax.servlet. ONJH ServletRequest, javax.servlet.ServletResponse) void ONJH com.ibm.servlet.engine.webapp.IdleServletState.service(com.ibm.servlet.engin ONJH e.webapp.StrictLifecycleServlet, javax.servlet.ServletRequest, ONJH javax.servlet.ServletResponse) void ONJH com.ibm.servlet.engine.webapp.StrictLifecycleServlet.service(javax.servlet.S ONJH ervletRequest, javax.servlet.ServletResponse) void ONJH com.ibm.servlet.engine.webapp.ServletInstance.service(javax.servlet.ServletR ONJH equest, javax.servlet.ServletResponse, ONJH com.ibm.servlet.engine.webapp.WebAppServletInvocationEvent) void ONJH com.ibm.servlet.engine.webapp.ValidServletReferenceState.dispatch(com.ibm.se ONJH rvlet.engine.webapp.ServletInstanceReference, javax.servlet.ServletRequest, ONJH javax.servlet.ServletResponse, ONJH com.ibm.servlet.engine.webapp.WebAppServletInvocationEvent) void ONJH com.ibm.servlet.engine.webapp.ServletInstanceReference.dispatch(javax.servle ONJH t.ServletRequest, javax.servlet.ServletResponse, ONJH com.ibm.servlet.engine.webapp.WebAppServletInvocationEvent) void ONJH com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.handleWebAppDispatch(c ONJH om.ibm.servlet.engine.webapp.WebAppRequest, ONJH javax.servlet.http.HttpServletResponse, boolean) void ONJH com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.dispatch(javax.servlet ONJH .ServletRequest, javax.servlet.ServletResponse, boolean) void ONJH com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.forward(javax.servlet. ONJH ServletRequest, javax.servlet.ServletResponse) void ONJH com.ibm.servlet.engine.srt.WebAppInvoker.handleInvocationHook(java.lang.Obje ONJH ct) void ONJH com.ibm.servlet.engine.invocation.CachedInvocation.handleInvocation(java.lan ONJH g.Object) void ONJH com.ibm.servlet.engine.invocation.CacheableInvocationContext.invoke(java.lan ONJH g.Object) void ONJH com.ibm.servlet.engine.srp.ServletRequestProcessor.dispatchByURI(java.lang.S ONJH tring, com.ibm.servlet.engine.srp.ISRPConnection) void ONJH com.ibm.servlet.engine.oselistener.OSEListenerDispatcher.service(com.ibm.ser ONJH vlet.engine.oselistener.api.IOSEConnection) void ONJH com.ibm.servlet.engine.http_transport.HttpTransportHandler.handleConnection( ONJH java.net.Socket) void ONJH com.ibm.servlet.engine.http_transport.HttpTransportHandler.run() void ONJH java.lang.Thread.run() ONJH Wrapped Error-2: Missing message for key index.title ONJH javax.servlet.ServletException: Missing message for key index.title ONJH java.lang.Throwable(java.lang.String) java.lang.Exception(java.lang.String) ONJH javax.servlet.ServletException(java.lang.Throwable) void ONJH org.apache.jasper.runtime.PageContextImpl.handlePageException(java.lang.Exce ONJH ption) void ONJH
RE: newbie question: Missing message for key index.title error
Hi Oleg, I currently have the parameters to the ActionServlet in web.xml as follows. !-- Standard Action Servlet Configuration (with debugging) -- servlet servlet-nameaction/servlet-name servlet-classorg.apache.struts.action.ActionServlet/servlet-class init-param param-nameapplication/param-name param-valueApplicationResources/param-value /init-param init-param param-nameconfig/param-name param-value/WEB-INF/struts-config.xml/param-value /init-param init-param param-namedebug/param-name param-value2/param-value /init-param init-param param-namedetail/param-name param-value2/param-value /init-param init-param param-namevalidate/param-name param-valuetrue/param-value /init-param load-on-startup2/load-on-startup /servlet This seems to be as you are saying to have it. I also have the classpath set to find the directory where my ApplicationResources.properties file is and it contains the 'index.title' and other string property values. Unfortunately this doesn't seem to solve the problem. Any other ideas? Thanks, John -Original Message- From: Oleg V Alexeev [SMTP:[EMAIL PROTECTED]] Sent: Wednesday, June 20, 2001 10:19 AM To: [EMAIL PROTECTED] Subject:Re: newbie question: Missing message for key index.title error Hello John, You must place string for key index.title to the your resources. Name for the resource bundle is in parameter application in servlet description for ActionServlet in web.xml. Wednesday, June 20, 2001, 12:55:40 PM, you wrote: ONJH Hi Everyone, ONJH Could anyone please tell me why I am getting the following error message ONJH when trying to run the 'blank' example that comes with Struts? ONJH Cheers, ONJH John ONJH Error 500 ONJH An error has occured while processing ONJH request:http://localhost:8080/blank/index.jsp ONJH Message: Server caught unhandled exception from servlet [jsp]: Missing ONJH message for key index.title ONJH Target Servlet: jsp ONJH StackTrace: ONJH Root Error-1: Missing message for key index.title ONJH javax.servlet.jsp.JspException: Missing message for key index.title ONJH java.lang.Throwable(java.lang.String) java.lang.Exception(java.lang.String) ONJH javax.servlet.jsp.JspException(java.lang.String) int ONJH org.apache.struts.taglib.bean.MessageTag.doStartTag() void ONJH blank._index_xjsp_jspsrc_910258570._jspService(javax.servlet.http.HttpServle ONJH tRequest, javax.servlet.http.HttpServletResponse) void ONJH org.apache.jasper.runtime.HttpJspBase.service(javax.servlet.http.HttpServlet ONJH Request, javax.servlet.http.HttpServletResponse) void ONJH javax.servlet.http.HttpServlet.service(javax.servlet.ServletRequest, ONJH javax.servlet.ServletResponse) void ONJH org.apache.jasper.runtime.JspServlet$JspServletWrapper.service(javax.servlet ONJH .http.HttpServletRequest, javax.servlet.http.HttpServletResponse, boolean) ONJH void ONJH org.apache.jasper.runtime.JspServlet.serviceJspFile(javax.servlet.http.HttpS ONJH ervletRequest, javax.servlet.http.HttpServletResponse, java.lang.String, ONJH java.lang.Throwable, boolean) void ONJH org.apache.jasper.runtime.JspServlet.service(javax.servlet.http.HttpServletR ONJH equest, javax.servlet.http.HttpServletResponse) void ONJH javax.servlet.http.HttpServlet.service(javax.servlet.ServletRequest, ONJH javax.servlet.ServletResponse) void ONJH com.ibm.servlet.engine.webapp.StrictServletInstance.doService(javax.servlet. ONJH ServletRequest, javax.servlet.ServletResponse) void ONJH com.ibm.servlet.engine.webapp.StrictLifecycleServlet._service(javax.servlet. ONJH ServletRequest, javax.servlet.ServletResponse) void ONJH com.ibm.servlet.engine.webapp.IdleServletState.service(com.ibm.servlet.engin ONJH e.webapp.StrictLifecycleServlet, javax.servlet.ServletRequest, ONJH javax.servlet.ServletResponse) void ONJH com.ibm.servlet.engine.webapp.StrictLifecycleServlet.service(javax.servlet.S ONJH ervletRequest, javax.servlet.ServletResponse) void ONJH com.ibm.servlet.engine.webapp.ServletInstance.service(javax.servlet.ServletR ONJH equest, javax.servlet.ServletResponse, ONJH com.ibm.servlet.engine.webapp.WebAppServletInvocationEvent) void ONJH com.ibm.servlet.engine.webapp.ValidServletReferenceState.dispatch(com.ibm.se ONJH rvlet.engine.webapp.ServletInstanceReference, javax.servlet.ServletRequest, ONJH javax.servlet.ServletResponse, ONJH
Re[2]: newbie question: Missing message for key index.title error
Hello John, Remove resources from classpath and place it to the WEB-INF/classes directory. For example WEB-INF classes ApplicationResources.properties ApplicationResources_en.properties (...place here resources for every language used in your app...) In resources track for string index.title=Some title in every file. That's all. Wednesday, June 20, 2001, 1:37:53 PM, you wrote: ONJH Hi Oleg, ONJH I currently have the parameters to the ActionServlet in web.xml as ONJH follows. ONJH !-- Standard Action Servlet Configuration (with debugging) -- ONJH servlet ONJH servlet-nameaction/servlet-name ONJH servlet-classorg.apache.struts.action.ActionServlet/servlet-class ONJH init-param ONJH param-nameapplication/param-name ONJH param-valueApplicationResources/param-value ONJH /init-param ONJH init-param ONJH param-nameconfig/param-name ONJH param-value/WEB-INF/struts-config.xml/param-value ONJH /init-param ONJH init-param ONJH param-namedebug/param-name ONJH param-value2/param-value ONJH /init-param ONJH init-param ONJH param-namedetail/param-name ONJH param-value2/param-value ONJH /init-param ONJH init-param ONJH param-namevalidate/param-name ONJH param-valuetrue/param-value ONJH /init-param ONJH load-on-startup2/load-on-startup ONJH /servlet ONJH This seems to be as you are saying to have it. I also have the ONJH classpath set to find the directory where my ApplicationResources.properties ONJH file is and it contains the 'index.title' and other string property values. ONJH Unfortunately this doesn't seem to solve the problem. Any other ideas? ONJH Thanks, ONJH John ONJH -Original Message- ONJH From: Oleg V Alexeev [SMTP:[EMAIL PROTECTED]] ONJH Sent: Wednesday, June 20, 2001 10:19 AM ONJH To: [EMAIL PROTECTED] ONJH Subject:Re: newbie question: Missing message for key ONJH index.title error ONJH Hello John, ONJH You must place string for key index.title to the your resources. ONJH Name for the resource bundle is in parameter application in servlet ONJH description for ActionServlet in web.xml. ONJH Wednesday, June 20, 2001, 12:55:40 PM, you wrote: ONJH ONJH Hi Everyone, ONJH ONJH Could anyone please tell me why I am getting the following ONJH error message ONJH ONJH when trying to run the 'blank' example that comes with Struts? ONJH ONJH Cheers, ONJH ONJH John ONJH ONJH Error 500 ONJH ONJH An error has occured while processing ONJH ONJH request:http://localhost:8080/blank/index.jsp ONJH ONJH Message: Server caught unhandled exception from servlet [jsp]: ONJH Missing ONJH ONJH message for key index.title ONJH ONJH Target Servlet: jsp ONJH ONJH StackTrace: ONJH ONJH Root Error-1: Missing message for key index.title ONJH ONJH javax.servlet.jsp.JspException: Missing message for key ONJH index.title ONJH ONJH java.lang.Throwable(java.lang.String) ONJH java.lang.Exception(java.lang.String) ONJH ONJH javax.servlet.jsp.JspException(java.lang.String) int ONJH ONJH org.apache.struts.taglib.bean.MessageTag.doStartTag() void ONJH ONJH ONJH blank._index_xjsp_jspsrc_910258570._jspService(javax.servlet.http.HttpServle ONJH ONJH tRequest, javax.servlet.http.HttpServletResponse) void ONJH ONJH ONJH org.apache.jasper.runtime.HttpJspBase.service(javax.servlet.http.HttpServlet ONJH ONJH Request, javax.servlet.http.HttpServletResponse) void ONJH ONJH ONJH javax.servlet.http.HttpServlet.service(javax.servlet.ServletRequest, ONJH ONJH javax.servlet.ServletResponse) void ONJH ONJH ONJH org.apache.jasper.runtime.JspServlet$JspServletWrapper.service(javax.servlet ONJH ONJH .http.HttpServletRequest, ONJH javax.servlet.http.HttpServletResponse, boolean) ONJH ONJH void ONJH ONJH ONJH org.apache.jasper.runtime.JspServlet.serviceJspFile(javax.servlet.http.HttpS ONJH ONJH ervletRequest, javax.servlet.http.HttpServletResponse, ONJH java.lang.String, ONJH ONJH java.lang.Throwable, boolean) void ONJH ONJH ONJH org.apache.jasper.runtime.JspServlet.service(javax.servlet.http.HttpServletR ONJH ONJH equest, javax.servlet.http.HttpServletResponse) void ONJH ONJH ONJH javax.servlet.http.HttpServlet.service(javax.servlet.ServletRequest, ONJH ONJH javax.servlet.ServletResponse) void ONJH ONJH ONJH com.ibm.servlet.engine.webapp.StrictServletInstance.doService(javax.servlet. ONJH ONJH ServletRequest, javax.servlet.ServletResponse) void ONJH ONJH ONJH com.ibm.servlet.engine.webapp.StrictLifecycleServlet._service(javax.servlet. ONJH ONJH ServletRequest
RE: Re[2]: newbie question: Missing message for key index.title error
Hi Oleg, That is the way I have it set up Unless my directory structure is wrong? Directory structure as follows web group name web WEB-INF classes John -Original Message- From: Oleg V Alexeev [SMTP:[EMAIL PROTECTED]] Sent: Wednesday, June 20, 2001 10:54 AM To: [EMAIL PROTECTED] Subject:Re[2]: newbie question: Missing message for key index.title error Hello John, Remove resources from classpath and place it to the WEB-INF/classes directory. For example WEB-INF classes ApplicationResources.properties ApplicationResources_en.properties (...place here resources for every language used in your app...) In resources track for string index.title=Some title in every file. That's all. Wednesday, June 20, 2001, 1:37:53 PM, you wrote: ONJH Hi Oleg, ONJH I currently have the parameters to the ActionServlet in web.xml as ONJH follows. ONJH !-- Standard Action Servlet Configuration (with debugging) -- ONJH servlet ONJH servlet-nameaction/servlet-name ONJH servlet-classorg.apache.struts.action.ActionServlet/servlet-class ONJH init-param ONJH param-nameapplication/param-name ONJH param-valueApplicationResources/param-value ONJH /init-param ONJH init-param ONJH param-nameconfig/param-name ONJH param-value/WEB-INF/struts-config.xml/param-value ONJH /init-param ONJH init-param ONJH param-namedebug/param-name ONJH param-value2/param-value ONJH /init-param ONJH init-param ONJH param-namedetail/param-name ONJH param-value2/param-value ONJH /init-param ONJH init-param ONJH param-namevalidate/param-name ONJH param-valuetrue/param-value ONJH /init-param ONJH load-on-startup2/load-on-startup ONJH /servlet ONJH This seems to be as you are saying to have it. I also have the ONJH classpath set to find the directory where my ApplicationResources.properties ONJH file is and it contains the 'index.title' and other string property values. ONJH Unfortunately this doesn't seem to solve the problem. Any other ideas? ONJH Thanks, ONJH John ONJH -Original Message- ONJH From: Oleg V Alexeev [SMTP:[EMAIL PROTECTED]] ONJH Sent: Wednesday, June 20, 2001 10:19 AM ONJH To: [EMAIL PROTECTED] ONJH Subject:Re: newbie question: Missing message for key ONJH index.title error ONJH Hello John, ONJH You must place string for key index.title to the your resources. ONJH Name for the resource bundle is in parameter application in servlet ONJH description for ActionServlet in web.xml. ONJH Wednesday, June 20, 2001, 12:55:40 PM, you wrote: ONJH ONJH Hi Everyone, ONJH ONJH Could anyone please tell me why I am getting the following ONJH error message ONJH ONJH when trying to run the 'blank' example that comes with Struts? ONJH ONJH Cheers, ONJH ONJH John ONJH ONJH Error 500 ONJH ONJH An error has occured while processing ONJH ONJH request:http://localhost:8080/blank/index.jsp ONJH ONJH Message: Server caught unhandled exception from servlet [jsp]: ONJH Missing ONJH ONJH message for key index.title ONJH ONJH Target Servlet: jsp ONJH ONJH StackTrace: ONJH ONJH Root Error-1: Missing message for key index.title ONJH ONJH javax.servlet.jsp.JspException: Missing message for key ONJH index.title ONJH ONJH java.lang.Throwable(java.lang.String) ONJH java.lang.Exception(java.lang.String) ONJH ONJH javax.servlet.jsp.JspException(java.lang.String) int ONJH ONJH org.apache.struts.taglib.bean.MessageTag.doStartTag() void ONJH ONJH ONJH blank._index_xjsp_jspsrc_910258570._jspService(javax.servlet.http.HttpServle ONJH ONJH tRequest, javax.servlet.http.HttpServletResponse) void ONJH ONJH ONJH org.apache.jasper.runtime.HttpJspBase.service(javax.servlet.http.HttpServlet ONJH ONJH Request, javax.servlet.http.HttpServletResponse) void ONJH ONJH ONJH javax.servlet.http.HttpServlet.service
Re: newbie question: Missing message for key index.title error
Helo John, this problem is kind a strange, because the reason for this is the 'classpath' When you're starting your AppServer, e.g. Tomacat, you must ensure that the struts.jar is loaded from the directory of your application, not from any other directory set through your 'classpath' register('-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN', 'jar:file:C:\tomcat\webapps\sadmin\WEB-INF\lib\struts.jar!/ org/apache/struts/resources/web-app_2_2.dtd' the best you can do is to set your classpath=.; and place all of your .jars files in the lib directory of your application. I don't have any idea why this is the decision of this problem, but it works! regards, Philip