Spring MVC Hibernate:消息请求处理失败;嵌套异常是 java.lang.NullPointerException

问题描述

         org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.NullPointerException
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:980)
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:859)
javax.servlet.http.HttpServlet.service(HttpServlet.java:655)
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:844)
javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)


 Root Cause
  java.lang.NullPointerException
com.emp.controller.EmployeeController.getEdit(EmployeeController.java:123)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:498)
org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221)
org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:136)
org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110)
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:817)
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:731)
org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:968)
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:859)
javax.servlet.http.HttpServlet.service(HttpServlet.java:655)
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:844)
javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

员工.java

@Entity
@Table(name="employee")
public class Employee {

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name="emp_id")

private Integer emp_id;

@Column(name="name")
private String name;

@Column(name="designation")
private String designation;

@Column(name="location")
private String location;

@Column(name="employee_type")
private String employee_type;

@OneToMany(mappedBy="employee",fetch = FetchType.EAGER)
private Set<DailyReport> dailyreport;

public Employee() {}
public Employee(String name,String designation,String location,String employee_type) {
super();
this.name = name;
this.designation = designation;
this.location = location;
this.employee_type = employee_type;
}//getters and setters

每日报告.java:

@Entity
@Table(name="daily_report")
public class DailyReport  {
@Id
@Column(name="id")
@GeneratedValue(strategy=GenerationType.AUTO)
private Integer id;

 @Column(name="date")
 private Date date;

 @Column(name="task_type")
 private  String task_type;

  @Column(name="description")
  private String description;

   @ManyToOne(fetch = FetchType.EAGER)
   @JoinColumn(name="employee_id")
   private Employee employee;
   public DailyReport() {}
   public DailyReport(Date date,String task_type,String description,Employee employee) {
    super();
    this.date = date;
    this.task_type = task_type;
    this.description = description;
    this.employee = employee;
    }//getters and stters

控制器

   @Controller
   public class EmployeeController {
   @Autowired
   private EmployeeService employeeService;

   @Autowired
   private DailyReportService dailyreportService;


   @RequestMapping(value = "/editEmployee",method = RequestMethod.GET)
   public String getEdit(@RequestParam(value="employee.emp_id",required=false) Integer emp_id,Model model) {
   DailyReport dailyreport=new DailyReport();
   Employee employee=   employeeService.getEmployee(dailyreport.getEmployee().getEmp_id());
   model.addAttribute("dailyreportAttribute",employee);
   model.addAttribute("emp_id",emp_id);
    return "addemployee";

道类:

      @Override
      public void edit(Employee employee) {
      Session sessions = session.getCurrentSession();
    
     Employee existingEmployee = (Employee) sessions.get(Employee.class,employee.getEmp_id());
       existingEmployee.setEmp_id(employee.getEmp_id());
       existingEmployee.setName(employee.getName());
       existingEmployee.setDesignation(employee.getDesignation());
       existingEmployee.setLocation(employee.getLocation());
       existingEmployee.setEmployee_type(employee.getEmployee_type());
       sessions.save(existingEmployee);
        }

服务类:

                @Transactional
           public void edit(Employee employee) {
            employeeDao.edit(employee);
    

我在 spring MVC 和 Hibernate 中有一对多的映射。 在控制器中执行编辑操作时,我收到错误消息:“org.springframework.web.util.NestedServletException:请求处理失败;嵌套异常为 java.lang.NullPointerException”。我是春天的新手。任何人请帮我解决这个问题。谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...