Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
项目不工作。在java web app中添加、删除、更新和搜索_Java_Html_Jsp - Fatal编程技术网

项目不工作。在java web app中添加、删除、更新和搜索

项目不工作。在java web app中添加、删除、更新和搜索,java,html,jsp,Java,Html,Jsp,我正在做我大学最后一年的项目。我不擅长编码。我对Java感兴趣,因此选择了它。我的项目是一个安置管理系统。它只是一个用于添加、查看、删除和更新数据的简单系统。我从网上得到了源代码。但是,当我运行它时,会出现第一个页面。单击任何按钮都会将其移动到HTTP状态500。 我提供下面的代码,以便您可以轻松帮助我解决此问题。 服务器错误屏幕截图。 只是为了了解项目的结构 index.jsp <%-- Document : index Created on : 30-

我正在做我大学最后一年的项目。我不擅长编码。我对Java感兴趣,因此选择了它。我的项目是一个安置管理系统。它只是一个用于添加、查看、删除和更新数据的简单系统。我从网上得到了源代码。但是,当我运行它时,会出现第一个页面。单击任何按钮都会将其移动到HTTP状态500。 我提供下面的代码,以便您可以轻松帮助我解决此问题。

服务器错误屏幕截图。



只是为了了解项目的结构

   index.jsp
     <%-- 
  Document   : index
  Created on : 30-Jan-2016, 12:38:44
  Author     : krish_000
  --%>

 <%@page contentType="text/html" pageEncoding="UTF-8"%>
 <!DOCTYPE html>
 <html>
 <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>JSP Page</title>
 </head>
 <body>
    <h1>Hello World!</h1>
    <a href="studentinfo.jsp" target="_top">edit page</a>
 </body>
 </html>

   studentinfo.jsp
    <%-- 
   Document   : index
   Created on : 20-Jan-2013, 22:16:54
    Author     : Joseph
   --%>

   <%@page contentType="text/html" pageEncoding="UTF-8"%>
   <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
   <!DOCTYPE html>
   <html>
   <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Student Information</title>
    </head>
    <body>
    <h1>Student Information</h1>
    <form action="./StudentServlet" method="POST">
        <table>
            <tr>
                <td>Student ID</td>
                <td><input type="text" name="studentId"           value="${student.studentId}" /></td>
            </tr>
            <tr>
                <td>First Name</td>
                <td><input type="text" name="firstname" value="${student.firstname}" /></td>
            </tr>
            <tr>
                <td>Last Name</td>
                <td><input type="text" name="lastname" value="${student.lastname}" /></td>
            </tr>
            <tr>
                <td>Year Level</td>
                <td><input type="text" name="yearLevel"    value="${student.yearLevel}" /></td>
            </tr>
            <tr>
                <td colspan="2">
                    <input type="submit" name="action" value="Add" />
                    <input type="submit" name="action" value="Edit" />
                    <input type="submit" name="action" value="Delete" />
                    <input type="submit" name="action" value="Search" />
                </td>                
            </tr>            
        </table>
     </form>        
     <br>
     <table border="1">
        <th>ID</th>
        <th>First Name</th>
        <th>Last Name</th>
        <th>Year Level</th>
        <c:forEach items="${allStudents}" var="stud">
            <tr>
                <td>${stud.studentId}</td>
                <td>${stud.firstname}</td>
                <td>${stud.lastname}</td>
                <td>${stud.yearLevel}</td>
            </tr>
        </c:forEach>
     </table>  
     </body>
    </html>

    source package
     com.joseph.controller
     studentServlet.jav
    /*
  * To change this template, choose Tools | Templates
  * and open the template in the editor.
  */
  package com.joseph.controller;

 import com.joseph.dao.StudentDaoLocal;
 import com.joseph.model.Student;
 import java.io.IOException;
 import javax.ejb.EJB;
 import javax.servlet.ServletException;
 import javax.servlet.annotation.WebServlet;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;

 /**
 *
 * @author Joseph
 */
 @WebServlet(name = "StudentServlet", urlPatterns = {"/StudentServlet"})
 public class StudentServlet extends HttpServlet {
 @EJB
 private StudentDaoLocal studentDao;

 protected void processRequest(HttpServletRequest request,     HttpServletResponse response)
        throws ServletException, IOException {
    String action = request.getParameter("action");
    String studentIdStr = request.getParameter("studentId");
    int studentId=0;
    if(studentIdStr!=null && !studentIdStr.equals("")){
        studentId=Integer.parseInt(studentIdStr);    
    }
    String firstname = request.getParameter("firstname");
    String lastname = request.getParameter("lastname");
    String yearLevelStr = request.getParameter("yearLevel");
    int yearLevel=0;
    if(yearLevelStr!=null && !yearLevelStr.equals("")){
        yearLevel=Integer.parseInt(yearLevelStr);
    }
    Student student = new Student(studentId, firstname, lastname,     yearLevel);

    if("Add".equalsIgnoreCase(action)){
        studentDao.addStudent(student);
    }else if("Edit".equalsIgnoreCase(action)){
        studentDao.editStudent(student);
    }else if("Delete".equalsIgnoreCase(action)){
        studentDao.deleteStudent(studentId);
    }else if("Search".equalsIgnoreCase(action)){
        student = studentDao.getStudent(studentId);
    }
    request.setAttribute("student", student);
    request.setAttribute("allStudents", studentDao.getAllStudents());
    request.getRequestDispatcher("studentinfo.jsp").forward(request,   response);
    }

    // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on   the + sign on the left to edit the code.">
  /**
  * Handles the HTTP
  * <code>GET</code> method.
  *
  * @param request servlet request
  * @param response servlet response
  * @throws ServletException if a servlet-specific error occurs
  * @throws IOException if an I/O error occurs
  */
  @Override
 protected void doGet(HttpServletRequest request, HttpServletResponse  response)
        throws ServletException, IOException {
    processRequest(request, response);
  }

  /**
  * <code>POST</code> method.
  *
  * @param request servlet request
  * @param response servlet response
  * @throws ServletException if a servlet-specific error occurs
  * @throws IOException if an I/O error occurs
  */
  @Override
  protected void doPost(HttpServletRequest request, HttpServletResponse   response)
        throws ServletException, IOException {
    processRequest(request, response);
 }

   /**
  * Returns a short description of the servlet.
  *
  * @return a String containing servlet description
  */
 @Override
 public String getServletInfo() {
    return "Short description";
 }// </editor-fold>
 }

  com.joseph.dao
  studentDAO.java

 /*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
 package com.joseph.dao;

 import com.joseph.model.Student;
 import java.util.List;
  import javax.ejb.Stateless;
  import javax.persistence.EntityManager;
 import javax.persistence.PersistenceContext;

 /**
  *
 * @author Joseph
  */
 @Stateless
 public class StudentDao implements StudentDaoLocal {
 @PersistenceContext
 private EntityManager em;

 @Override
 public void addStudent(Student student) {
    em.persist(student);
 }

 @Override
 public void editStudent(Student student) {
    em.merge(student);
 }

 @Override
 public void deleteStudent(int studentId) {
    em.remove(getStudent(studentId));
 }

 @Override
 public Student getStudent(int studentId) {
    return em.find(Student.class, studentId);
 }

 @Override
 public List<Student> getAllStudents() {
    return em.createNamedQuery("Student.getAll").getResultList();
 }

 }

 studentDAOLocal.java

 /*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
 package com.joseph.dao;

 import com.joseph.model.Student;
 import java.util.List;
 import javax.ejb.Local;

 /**
 *
 * @author Joseph
 */
 @Local
 public interface StudentDaoLocal {

 void addStudent(Student student);

 void editStudent(Student student);

 void deleteStudent(int studentId);

 Student getStudent(int studentId);

 List<Student> getAllStudents();

 }

  com.joseph.model
  student.java
  /*
  * To change this template, choose Tools | Templates
  * and open the template in the editor.
  */
  package com.joseph.model;

 import java.io.Serializable;
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
  import javax.persistence.GenerationType;
 import javax.persistence.Id;
 import javax.persistence.NamedQueries;
 import javax.persistence.NamedQuery;
 import javax.persistence.Table;

 /**
  *
   * @author Joseph
  */
 @Entity
 @Table
   @NamedQueries({@NamedQuery(name="Student.getAll",query="SELECT e FROM  Student e")})
 public class Student implements Serializable{
 @Id
 @GeneratedValue(strategy=GenerationType.AUTO)
 @Column
 private int studentId;
 @Column
 private String firstname;
 @Column
 private String lastname;
 @Column
 private int yearLevel;

 public int getStudentId() {
    return studentId;
 }

 public void setStudentId(int studentId) {
    this.studentId = studentId;
 }

 public String getFirstname() {
    return firstname;
 }

 public void setFirstname(String firstname) {
    this.firstname = firstname;
 }

  public String getLastname() {
    return lastname;


 public void setLastname(String lastname) {
    this.lastname = lastname;
 }

 public int getYearLevel() {
    return yearLevel;
 }

 public void setYearLevel(int yearLevel) {
    this.yearLevel = yearLevel;
 }

 public Student(int studentId, String firstname, String lastname, int yearLevel)  {
     this.studentId = studentId;
    this.firstname = firstname;
    this.lastname = lastname;
    this.yearLevel = yearLevel;
  }

  public Student(){}
  }

企业Bean/ 学生道

  /*
  * To change this template, choose Tools | Templates
  * and open the template in the editor.
  */
  package com.joseph.dao;

  import com.joseph.model.Student;
  import java.util.List;
  import javax.ejb.Stateless;
  import javax.persistence.EntityManager;
  import javax.persistence.PersistenceContext;

 /**
 *
 * @author Joseph
 */
 @Stateless
 public class StudentDao implements StudentDaoLocal {
 @PersistenceContext
 private EntityManager em;

 @Override
 public void addStudent(Student student) {
    em.persist(student);
 }

 @Override
 public void editStudent(Student student) {
    em.merge(student);
 }

 @Override
 public void deleteStudent(int studentId) {
    em.remove(getStudent(studentId));
 }

 @Override
 public Student getStudent(int studentId) {
    return em.find(Student.class, studentId);
 }

 @Override
 public List<Student> getAllStudents() {
    return em.createNamedQuery("Student.getAll").getResultList();
 }

 }
/*
*要更改此模板,请选择工具|模板
*然后在编辑器中打开模板。
*/
包com.joseph.dao;
导入com.joseph.model.Student;
导入java.util.List;
导入javax.ejb.Stateless;
导入javax.persistence.EntityManager;
导入javax.persistence.PersistenceContext;
/**
*
*@作者约瑟夫
*/
@无国籍
公共类StudentDao实现StudentDaoLocal{
@持久上下文
私人实体管理者;
@凌驾
公立学校学生(学生){
em.persist(学生);
}
@凌驾
公立学校学生(学生){
em.merge(学生);
}
@凌驾
公共学生(国际学生ID){
em.remove(getStudent(studentId));
}
@凌驾
公立学生getStudent(国际学生ID){
返回em.find(Student.class,studentId);
}
@凌驾
公共列表getAllStudents(){
返回em.createNamedQuery(“Student.getAll”).getResultList();
}
}

检查您的应用程序服务器日志,看看是否可以在那里找到有关错误的更多详细信息。不。我在那里找不到任何东西。我运行我的项目。它的工作范围。有人可以说如何单独显示表数据。在另一个jsp页面中。