1

我是spring的新手,也是spring mvc的新手。我正在使用 3.1 版。另外,目前,我使用的是 Tomcat 7 和 MySQL 5.5。我在数据库表中有数据,可以在网页上显示。现在,我正在尝试将数据从 Web 表单添加到我的数据库,然后在网页上显示该数据。

当我尝试调用我的 Web 表单时,这是我的运行时错误的一部分:

** 根本原因是:不支持请求方法“GET” org.springframework.web.HttpRequestMethodNotSupportedException:org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter$ServletHandlerMethodResolver.resolveHandlerMethod(AnnotationMethodHandlerAdapter.java 不支持请求方法“GET” :665) 在 org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:424) 在 org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:431) org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:900) 在 org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:827) 在 org.springframework.web.servlet.FrameworkServlet。processRequest(FrameworkServlet.java:882) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778) at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) at javax.servlet.http .HttpServlet.service(HttpServlet.java:722) 在

这是我的控制器有问题的部分。请注意,如果我只有 @RequestMapping("/newProfile") 行,而不是其他 @RequestMapping 行,那么我会得到一个网页,但没有显示我的数据,这是我所期望的,因为我没有插入在我的 DAO 层中。

    @RequestMapping(value = "/newProfile", method = {RequestMethod.POST})
//@RequestMapping("/newProfile")
public String addNewProfile(@ModelAttribute("profile")Profile profile, ModelMap model) {
      model.addAttribute("firstName", profile.getFirstName());
      model.addAttribute("lastName", profile.getLastName());
      return "newProfileResult";
   }

这是我的输入网络表单(目前使用 JSP):

<%@ include file="/WEB-INF/jsp/includes.jsp" %>
<%@ include file="/WEB-INF/jsp/header.jsp" %>

<html>
<head>
    <title>Profile Test</title>
</head>
<body>

<h2>Information</h2>
<form:form method="POST" action="/newProfile">
   <table>
    <tr>
        <td><form:label path="firstName">First Name</form:label></td>
        <td><form:input path="firstName" /></td>
    </tr>
    <tr>
        <td><form:label path="lastName">Last Name</form:label></td>
        <td><form:input path="lastName" /></td>
    </tr>   
    <tr>
        <td colspan="2">
            <input type="submit" value="Submit"/>
        </td>
    </tr>    
</table>  
</form:form>
</body>

4

1 回答 1

0

异常告诉 Spring 找不到 GET 请求的映射。我假设您只在浏览器中输入 /newProfile。这会导致 GET 请求。提供到 GET 请求的映射。您可以通过单独的映射来执行此操作,或者在您编写时省略该方法。

于 2013-02-03T12:26:10.800 回答