Ошибка сервлета в программе, которая ищет запись с помощью mvc - PullRequest
0 голосов
/ 14 марта 2012

Добрый день всем,

Прежде всего, я новичок в мире Java.У меня есть эта задача, чтобы создать программу, которая будет искать записи с использованием MVC.У меня есть код для начала, но у меня ошибка.Я надеюсь, что кто-то может помочь мне исправить это как можно скорее.

EmpBean.java

package form;
import java.sql.*;
import java.util.*;
public class EmpBean {

public List dataList(){
ArrayList list=new ArrayList();
try{
 Class.forName("org.sqlite.JDBC");
       Connection con = DriverManager.getConnection("C:\\SoftdevWorkspace\\mvc\\WebContent\\employee.sql");
       Statement st=con.createStatement();
       ResultSet rs=st.executeQuery("select * from employee");
       while(rs.next()){
           list.add(rs.getString("name"));
           list.add(rs.getString("department"));
           list.add(rs.getString("email"));

}
}
catch(Exception e){}
return list;

}
}

BeanInServlet.java

package form;

import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class BeanInServlet extends HttpServlet{
protected void doGet(HttpServletRequest req, HttpServletResponse res)
    throws ServletException, IOException{
    form.EmpBean p = new form.EmpBean();
    List list=p.dataList();

    req.setAttribute("data", list);
    RequestDispatcher rd = req.getRequestDispatcher("/beandata.jsp");
    rd.forward(req, res);
}
}

beandata.jsp

<%@ page language="java"   contentType="text/html; charset=ISO-8859-1 "
pageEncoding="ISO-8859-1"%>
<%@page import="java.util.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<table border="1" width="303">
<tr>
<td width="119"><b>Name</b></td>
<td width="168"><b>Address</b></td>
<td width="119"><b>Contact no</b></td>
<td width="168"><b>Email</b></td>
</tr>
<% Iterator itr;%>
<% List data=(List)request.getAttribute("data");
for(itr=data.iterator(); itr.hasNext(); ){
%>
<tr>
<td width="119"><%=itr.next()%></td>
<td width="168"><%=itr.next()%></td>
<td width="119"><%=itr.next()%></td>
<td width="168"><%=itr.next()%></td>
</tr>
<%}%>
</table>
</html>

А вот и ошибка:

org.apache.jasper.JasperException: An exception occurred processing JSP page /beandata.jsp at line 19

16: </tr>
17: <% Iterator itr;%>
18: <% List data=(List)request.getAttribute("data");
19: for(itr=data.iterator(); itr.hasNext(); ){
20: %>
21: <tr>
22: <td width="119"><%=itr.next()%></td>

Stacktrace:

org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:568)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:470)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

Я использую Eclipse Indigo, Tomcat 7, SqliteDev

1 Ответ

0 голосов
/ 14 марта 2012

Может быть, вы можете попробовать конструкцию цикла For-each, чтобы увидеть, устраняет ли это ошибку.Мне кажется, ваша программа выглядит хорошо ...

Как правильно заметил @Normalocity, что вы до сих пор пытались избавиться от проблемы?

...