Hi, I have been trying to run JSPs with JSTL on tomcat 5.0.28 without any success.
My setup: $CATALINA_ROOT/ webapps/ tp/ login.html two2.jsp WEB-INF/ web.xml lib/ jstl.jar standard.jar Here is what two2.jsp looks like: ------------- <[EMAIL PROTECTED] contentType="text/html"%> <[EMAIL PROTECTED] prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <html> <head><title>Post Data Viewer</title></head> <body> <h2>Here is your posted data</h2> <c:forEach var="map_entry" items="${param}"> <strong><c:out value="${map_entry.key}" /></strong>: <c:out value="${map_entry.value}" /><br><br> </c:forEach> </body> </html> --------------------- Here is the error I get when tomcat access two2.jsp: --------------------------------- org.apache.jasper.JasperException: Unable to compile class for JSP Generated servlet error: C:\Program Files\Java\jakarta-tomcat-5.0.28\work\Catalina\localhost\tp\org\apache\jsp\two2_jsp.java:97: _jspx_meth_c_out_0(javax.servlet.jsp.tagext.JspTag,javax.servlet.jsp.PageContext,int[]) in org.apache.jsp.two2_jsp cannot be applied to (org.apache.taglibs.standard.tag.rt.core.ForEachTag,javax.servlet.jsp.PageContext,int[]) if (_jspx_meth_c_out_0(_jspx_th_c_forEach_0, _jspx_page_context, _jspx_push_body_count_c_forEach_0)) ^ Generated servlet error: C:\Program Files\Java\jakarta-tomcat-5.0.28\work\Catalina\localhost\tp\org\apache\jsp\two2_jsp.java:101: _jspx_meth_c_out_1(javax.servlet.jsp.tagext.JspTag,javax.servlet.jsp.PageContext,int[]) in org.apache.jsp.two2_jsp cannot be applied to (org.apache.taglibs.standard.tag.rt.core.ForEachTag,javax.servlet.jsp.PageContext,int[]) if (_jspx_meth_c_out_1(_jspx_th_c_forEach_0, _jspx_page_context, _jspx_push_body_count_c_forEach_0)) ^ 2 errors ------------------------------------ I found a similar issue on this mailing list and the suggested fixes were to copy tagPlugins.xml to WEB-INF and to make sure that jstl.jar and standard.jar are not present in any other common or shared libs apart from my webapp lib directory. Tomcat was not loading jstl.jar and standard.jar from anywhere else, there are only present in my WEB-INF/lib directory. When I copy tagPlugins.xml to WEB-INF I get another error: ------------------------- org.apache.jasper.JasperException org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:372) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) root cause java.lang.NullPointerException org.apache.jsp.two2_jsp._jspService(two2_jsp.java:191) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) ------------------- Here is the java code where it chokes: Object _jspx_temp0= new String("${param}"); Iterator _jspx_temp1 = null; if (_jspx_temp0 instanceof Object[]) _jspx_temp1=toIterator((Object[])_jspx_temp0); else if (_jspx_temp0 instanceof boolean[]) _jspx_temp1=toIterator((boolean[])_jspx_temp0); else if (_jspx_temp0 instanceof byte[]) _jspx_temp1=toIterator((byte[])_jspx_temp0); else if (_jspx_temp0 instanceof char[]) _jspx_temp1=toIterator((char[])_jspx_temp0); else if (_jspx_temp0 instanceof short[]) _jspx_temp1=toIterator((short[])_jspx_temp0); else if (_jspx_temp0 instanceof int[]) _jspx_temp1=toIterator((int[])_jspx_temp0); else if (_jspx_temp0 instanceof long[]) _jspx_temp1=toIterator((long[])_jspx_temp0); else if (_jspx_temp0 instanceof float[]) _jspx_temp1=toIterator((float[])_jspx_temp0); else if (_jspx_temp0 instanceof double[]) _jspx_temp1=toIterator((double[])_jspx_temp0); else if (_jspx_temp0 instanceof Collection) _jspx_temp1=((Collection)_jspx_temp0).iterator(); else if (_jspx_temp0 instanceof Iterator) _jspx_temp1=(Iterator)_jspx_temp0; else if (_jspx_temp0 instanceof Enumeration) _jspx_temp1=toIterator((Enumeration)_jspx_temp0); else if (_jspx_temp0 instanceof Map) _jspx_temp1=((Map)_jspx_temp0).entrySet().iterator(); while (_jspx_temp1.hasNext()){ _jspx_page_context.setAttribute( "map_entry", _jspx_temp1.next()); ::::::::::: } -------------------- while statement gets a NullPointerException. Any help is much appreciated. Regards, Avilay Parekh --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]