The problem is independent of jboss. If package java.util is not declared in the JSP, 
then the JSP parser won't recognize the unqualified package classes. This is not a 
classpath problem. If it works in WebLogic, then the package must be mysteriously 
declared there somewhere. Check the generated JSP preprocessor .java file in each case.

The Locale stuff in the JSP is unnecessary; perhaps you added it for debugging? In any 
case, Struts can't find your resource bundle because it's not in the classpath. Change 
the application param from "/WEB-INF/ApplicationResources" to "ApplicationResources" 
and put ApplicationResources.properties in /WEB-INF/classes or another servlet 
classpath location. Cf. Struts docs and examples.

--
Fred Loney
Enterprise Java Consultant
Spirited Software, Inc.
[EMAIL PROTECTED]

Nguyen Thanh Phong wrote:

> Hi all,
>
> I have a very strange problem using Struts with JBoss 2.2/EmbeddedTomcat
> 3.2.1.
>
> First, it doesn't understand class Locale in package java.util, so I have to
> use the fully qualified class name as java.util.Locale. This is a minor
> thing, but this is really strange to me (at least I don't have to do this on
> WebLogic). Is this related to the CLASSPATH of Tomcat?
>
> Second, it cannot find the message key to be used with bean:message (see the
> source file and the error below).
>
> Could someone give me a hand?
>
> All hints/comments are very much appreciated.
>
> Nguyen Thanh Phong                           Tel: 84-8-837 25 06/837 25 07
> Saigon Software Development Company (SDC)    Fax: 84-8-837 25 11
> 10 Co Giang Street, Dist I, HCMC             Email:
> [EMAIL PROTECTED]
> Vietnam
>
> Start of web.xml segment
> ============================================
>
>     <!-- Action Servlet Configuration -->
>     <servlet>
>         <servlet-name>action</servlet-name>
>
> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
>         <init-param>
>             <param-name>application</param-name>
>             <param-value>/WEB-INF/ApplicationResources</param-value>
>         </init-param>
>         <init-param>
>             <param-name>config</param-name>
>             <param-value>/WEB-INF/resource/struts-config.xml</param-value>
>         </init-param>
>         <init-param>
>             <param-name>debug</param-name>
>             <param-value>0</param-value>
>         </init-param>
>         <init-param>
>             <param-name>detail</param-name>
>             <param-value>0</param-value>
>         </init-param>
>         <init-param>
>             <param-name>validate</param-name>
>             <param-value>true</param-value>
>         </init-param>
>         <load-on-startup>1</load-on-startup>
>     </servlet>
>
> Start of Error
> ============================================
>
> Error: 500
> Location: /smart/ebiz/ErrorPage.jsp
> Internal Servlet Error:
>
> javax.servlet.ServletException: Missing message for key
> warning.security.header
>  at
> org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImp
> l.java:459)
>  at
> ebiz._0002febiz_0002fErrorPage_0002ejspErrorPage_jsp_1._jspService(_0002febi
> z_0002fErrorPage_0002ejspErrorPage_jsp_1.java:186)
>  at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at
> org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.ja
> va:177)
>  at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
>  at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
>  at org.apache.tomcat.core.Handler.service(Handler.java:286)
>  at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
>  at
> org.apache.tomcat.facade.RequestDispatcherImpl.forward(RequestDispatcherImpl
> .java:194)
>  at
> org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:421)
>  at
> org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImp
> l.java:446)
>  at
> ebiz._0002febiz_0002findex_0002ejspindex_jsp_0._jspService(_0002febiz_0002fi
> ndex_0002ejspindex_jsp_0.java:312)
>  at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at
> org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.ja
> va:177)
>  at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
>  at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
>  at org.apache.tomcat.core.Handler.service(Handler.java:286)
>  at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
>  at
> org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:79
> 7)
>  at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
>  at
> org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpC
> onnectionHandler.java:210)
>  at
> org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
>  at
> org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498)
>  at java.lang.Thread.run(Thread.java:484)
>
> Root cause:
> javax.servlet.jsp.JspException: Missing message for key
> warning.security.header
>  at org.apache.struts.taglib.bean.MessageTag.doStartTag(MessageTag.java:242)
>  at
> ebiz._0002febiz_0002fErrorPage_0002ejspErrorPage_jsp_1._jspService(_0002febi
> z_0002fErrorPage_0002ejspErrorPage_jsp_1.java:111)
>  at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at
> org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.ja
> va:177)
>  at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
>  at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
>  at org.apache.tomcat.core.Handler.service(Handler.java:286)
>  at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
>  at
> org.apache.tomcat.facade.RequestDispatcherImpl.forward(RequestDispatcherImpl
> .java:194)
>  at
> org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:421)
>  at
> org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImp
> l.java:446)
>  at
> ebiz._0002febiz_0002findex_0002ejspindex_jsp_0._jspService(_0002febiz_0002fi
> ndex_0002ejspindex_jsp_0.java:312)
>  at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at
> org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.ja
> va:177)
>  at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
>  at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
>  at org.apache.tomcat.core.Handler.service(Handler.java:286)
>  at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
>  at
> org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:79
> 7)
>  at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
>  at
> org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpC
> onnectionHandler.java:210)
>  at
> org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
>  at
> org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498)
>  at java.lang.Thread.run(Thread.java:484)
>
> Start of JSP source
> ============================================
>
> <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
> <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
> <%@ page isErrorPage="true" %>
> <html:html locale="true">
> <%
> String contextPath=request.getContextPath();
> java.util.Locale locale = (java.util.Locale)
> session.getAttribute("org.apache.struts.action.LOCALE");
> if (locale == null) {
>     locale = java.util.Locale.getDefault();
> }
> String language = locale.getLanguage();
> String localeStr = locale.toString();
> %>
>
> <center>
> <table border="0" cellPadding="0" cellSpacing="0" width="495">
>   <tbody>
>     <tr align="middle" vAlign="top">
>       <td>&nbsp;</td>
>     </tr>
>     <tr>
>       <td>
>         <p align="center"><b><br><br>
>         <bean:message key="warning.security.header"/></b><br>
>         <bean:message key="warning.security.message"/></p>
>
>       </td>
>     </tr>
>   </tbody>
> </table>
> </center>
> <BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><HR>
> <H1>Error !</H1>
>
> <BR>An error occured in the html. Error Message is: <%=
> exception.getMessage() %><BR>
> Stack Trace is : <PRE><FONT COLOR="RED">
> <%
>   java.io.CharArrayWriter cw = new java.io.CharArrayWriter();
>   java.io.PrintWriter pw = new java.io.PrintWriter(cw,true);
>   exception.printStackTrace(pw);
>   out.println(cw.toString());
> %>
> </FONT></PRE>
> <BR>
>
> </html:html>
>




_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to