JSTL : problems with <sql:query>/forEach tag
I am not able to iterate thru the resultset provided by <sql:query> tag in JSTL. rowcount and columnName works, which means that query does produce a resultset. However, the <c:forEach> tag doesnt display the retrieved data. Code is approx like:
c:catch var="e">
<sql:query var="queryResults" >
select * from emp
</sql:query>
</c:catch>
<c:if test="${e!=null}">The caught exception is: ${e}
${queryResults.rowCount}
<c:forEach var="row" items="${queryResults.rows}">
<tr>
<td> <c:out value="${row.EMPNO}" /></td>
</tr>
</c:forEach>
</table>
Error thrown is :
javax.servlet.ServletException: Unable to find a value for "EMPNO" in object of class "java.lang.String" using operator "."
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:867)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:800)
org.apache.jsp.jsp.sql.query_jsp._jspService(query_jsp.java:92)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
Pls. help!

