planty182
planty182

Reputation: 57

Symbol not found Error in jsp beans

Thank you for reading this Question.

CODE BELOW

I'm trying to get a jsp working with a database. The database is currently partially populated and I am trying to get this information back to my browser and print it out.

Unfortunately, when I try this I get an error saying that the compiler cannot find symbol 'studentData' on the line where I try to call getStudentList() in newjsp.jsp.

I have copied the code that's in newjsp from a friend's project where it works fine.

I hope you can help!

Thanks,

planty182

********* StudentBean.java *****

         package my.beans;


         public class StudentBean {


                 private String firstName;
                 private String lastName;
                 private String comment;
                 private String email;

                 public StudentBean(){

                 }

                 // get/set for First Name
                 public void setFirstName(String firstName) {
                         this.firstName = firstName;
                 }
                 public String getFirstName(){
                         return firstName;
                 }

                 // get/set for Last Name
                 public void setLastName(String lastName) {
                         this.lastName = lastName;
                 }
                 public String getLastName(){
                         return lastName;
                 }

                 // get/set for comment
                 public void setComment(String comment) {
                         this.comment = comment;
                 }
                 public String getComment(){
                         return comment;
                 }

                 // get/set for Email
                 public void setEmail(String email) {
                         this.email = email;
                 }
                 public String getEmail(){
                         return email;
                 }
         }

**** StudentDataBean.java ********

         package my.beans;

         import java.sql.SQLException;
         import javax.sql.rowset.CachedRowSet;
         import java.util.ArrayList;
         import com.sun.rowset.CachedRowSetImpl; // CachedRowSet implementation

         public class StudentDataBean {

            private CachedRowSet rowSet;

            // construct TitlesBean object
            public StudentDataBean() throws Exception
            {
               // load the MySQL driver
               Class.forName( "com.mysql.jdbc.Driver" );

               // specify properties of CachedRowSet
               rowSet = new CachedRowSetImpl();
               rowSet.setUrl( "jdbc:mysql://localhost:3306/test" );
               rowSet.setUsername( "root" );
               rowSet.setPassword( "" );

                   // obtain list of titles
               rowSet.setCommand(
                  "SELECT firstName, lastName, email, comment FROM guests" );
               rowSet.execute();
            } // end StudentDataBean constructor

            // return an ArrayList of StudnetBeans
            public ArrayList<StudentBean> getStudentList() throws SQLException
            {
               ArrayList<StudentBean> studentList = new ArrayList<StudentBean>();

               rowSet.beforeFirst(); // move cursor before the first row

               // get row data
               while ( rowSet.next() )
               {
                  StudentBean student = new StudentBean();

                  student.setFirstName( rowSet.getString( 1 ) );
                  student.setLastName( rowSet.getString( 2 ) );
                  student.setEmail( rowSet.getString( 3 ) );
                  student.setComment( rowSet.getString( 4 ) );
                  studentList.add( student );
               } // end while

               return studentList;
            } // end method getStudentList

            // insert a Student in student database
         public void addStudent( StudentBean student ) throws SQLException
         {
         rowSet.moveToInsertRow(); // move cursor to the insert row

          // update the three columns of the insert row
         rowSet.updateString( 1, student.getFirstName() );
         rowSet.updateString( 2, student.getLastName() );
         rowSet.updateString( 3, student.getEmail() );
         rowSet.updateString( 4, student.getComment() );
         rowSet.insertRow(); // insert row to rowSet
         rowSet.moveToCurrentRow(); // move cursor to the current row
         rowSet.acceptChanges(); // propagate changes to database
         } // end method addStudent
    } // end class StudentDataBean

****** newjsp.jsp ***********

   <%@page import="java.util.ArrayList"%>
   <%@page contentType="text/html" pageEncoding="UTF-8"%>
   <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">

   <%@ page import="java.util.*" %>
   <%@ page import="my.beans.StudentDataBean"%>
   <%@ page import="my.beans.StudentBean"%>
   <jsp:useBean id="studentData" scope="request" class="my.beans.StudentDataBean"/>
   <html>
     <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
         <title>Words View</title>
           <style type="text/css">
           table, tr, td, th
           {
                text-algn: center;
                font-size: .9em;
                border: 3px groove;
                padding: 3px;
                background-color: #eee9e9;
           }
     </style>
     </head>
     <body>
     <h1>Student List</h1>
     <table border="1">
        <tr>
            <th>
                <h4>Email</h4>
            </th>
            </tr>
                <%
                    ArrayList<StudentBean> studentList = studentData.getStudentList();
                    Iterator studentListIterator = studentList.iterator();
                    StudentBean student;

                    while (studentListIterator.hasNext()){
                        student = (StudentBean) studentListIterator.next();
                %>
            <tr>
                <td><%= student.getEmail()%></td>

            </tr>
            <% }
            %>
     </table>
     </body>
     </html>

Upvotes: 1

Views: 530

Answers (1)

John Smith
John Smith

Reputation: 276

might be an ide error, restart netbeans. (if youre using netbeans... otherwise god knows.) love Tom xx

Upvotes: 1

Related Questions