java.lang.NoClassDefFoundError:javax / servlet / jsp / jstl / sql / SQLExecutionTag

时间:2014-08-05 04:34:37

标签: sql eclipse jsp tomcat jstl

当我尝试在Tomcat服务器中运行带有一些JSTL标记的JSP文件时,我遇到了一个错误。

我可以弄清楚..它清楚地说,SQL的一些问题,但这里我的代码中有。

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"%>
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<sql:setDataSource dataSource="EMS_DataSource" />

 <sql:query var="qryGet" >
       SELECT ems_emp_id, ems_emp_fname, ems_emp_lname FROM riz_ems_emp
 </sql:query>

 <c:forEach var="row" items="${qryGet.rows}">
      <tr>
           <td><c:out value="${row.ems_emp_id}" /></td>
           <td><c:out value="${row.ems_emp_fname}" /></td>
           <td><c:out value="${row.ems_emp_lname}" /></td>
     </tr>
 </c:forEach>

除此之外,我已经正确关闭了所有相关标签。

有人请告诉我这个错误的原因。

现在:我将我的罐子改为jsp-api-2.0.jar和jstl-1.2.jar。

现在我得到的错误是;

  

无法为JSP编译类:方法getELContext()是   未定义类型PageContext

1 个答案:

答案 0 :(得分:0)

您将覆盖默认数据库配置的值。您应该在<sql:query>标记中提供数据源,

<sql:setDataSource var=dbDetails dataSource="EMS_DataSource" />

 <sql:query dataSource=${dbDetails } var="qryGet" >
       SELECT ems_emp_id, ems_emp_fname, ems_emp_lname FROM riz_ems_emp
 </sql:query>

还要确保为sql:setDataSource标记指定了足够的属性。

希望这会有所帮助!!