Spring MVC不返回网页

问题描述 投票:0回答:1

在我的jsp表单中,我从用户那里获得了month和year的值,并返回了具有相关值的网页。这是我的表格:

    <div class="modal-content animate" >
        <div class="imgcontainer">
            <span onclick="document.getElementById('month').style.display='none'" class="close" title="Close Modal">&times;</span>
            <img src="doctor.jpg" alt="Avatar" class="avatar">
        </div>
        <form id="differentMonth" action="differentMonth"  method="post">

                <select name="month" multiple="multiple">
                    <%
                        int i;
                        for(i=1;i<=12;i++){
                            out.print("<option value=" + i +">" + Month.of(i) +  "</option>");
                        }
                    %>
                </select>

            <select id="year" multiple="multiple">
                <%  int year1 = Integer.parseInt(Year.now().toString());
                    for(i=0;i<=10;i++){
                        out.print("<option value=" + i +">" + ( year1) +  "</option>");
                        year1=year1-1;
                    }
                %>
            </select>

            <input type="submit" name="submitted" value="submit" />
        </form>

        </centre>
        </div>

    </div>

</div>

此表单从用户那里获取值。在调度程序中,

@RequestMapping(value = "/differentMonth", method = RequestMethod.POST)
public String differentMonth(@Validated DifferentMonth mon, Model model) {
    System.out.println("In controller");
    AccessDatabase ac = new AccessDatabase(AccessDatabase.id);
    System.out.println(AccessDatabase.id);
    ac.setStatusOfMonth(AccessDatabase.id,Integer.toString(mon.getMonth()),Integer.toString(mon.getYear()));
    System.out.println(user.getUserName()+" "+mon.getMonth()+" "+mon.getYear());
    model.addAttribute("database", ac);
    return "user";            // Only this is important
}

“用户”也得到了很好的定义,因为此div是从user.jsp本身调用的。它是第一次工作。问题是用户第二次由servlet返回时

这里是错误:

HTTP Status 500 – Internal Server Error
Type Exception Report

M

    essage Request processing failed; nested exception is java.lang.NullPointerException

    Description The server encountered an unexpected condition that prevented it from fulfilling the request.

    Exception

    org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.NullPointerException
        org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:982)
        org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
        org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
        org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    Root Cause

    java.lang.NullPointerException
        com.PricolAttendance.spring.controller.HomeController.differentMonth(HomeController.java:95)
        java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        java.base/java.lang.reflect.Method.invoke(Method.java:567)
        org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
        org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)
        org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97)
        org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)
        org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)
        org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
        org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967)
        org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901)
        org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
        org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
        org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
        org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    Note The full stack trace of the root cause is available in the server logs.

    Apache Tomcat/7.0.99

看起来好像没有逻辑错误,因为user.jsp最初工作正常。请帮助。

spring-mvc jsp tomcat servlets nullpointerexception
1个回答
0
投票

在您的代码中,使用bean映射表单存在错误。

© www.soinside.com 2019 - 2024. All rights reserved.