Я знаю, что этот вопрос задан и отвечает по-разному, но с весной все по-другому.Весна 4/Ни BindingResult, ни простой целевой объект
Я новичок с весной 4 - MVS и просто хочу создать свою первую MVC - реализацию HelloWorld и получил ошибку
java.lang.IllegalStateException: Ни BindingResult, ни обычной целевого объекта для имени боба ' команда»доступна как запрос атрибута org.springframework.web.servlet.support.BindStatus. (BindStatus.java:141) org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.get
Мой веб .xml выглядит это:
Архетип создания веб-приложений HelloWorld org.springframework.web.servlet.DispatcherServlet HelloWorld / contextConfigLocation /WEB-INF/HelloWorld- servlet.xml org.springframework.web.context.ContextLoaderListener Мой HelloWorld-servlet.xml так:<context:component-scan base-package="com.programcreek.helloworld.controller" />
<bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix">
<value>/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>
Моя student.jsp выглядит следующим образом:
<%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<html>
<head>
<title>Spring MVC Form Handling</title>
</head>
<body>
<h2>2 Student Information 2</h2>
<form:form method="POST" action="/HelloWorld/addStudent" >
<table>
<tr>
<td><form:label path="name">Name</form:label></td>
<td><form:input path="name" /></td>
</tr>
<tr>
<td><form:label path="age">Age</form:label></td>
<td><form:input path="age" /></td>
</tr>
<tr>
<td><form:label path="id">id</form:label></td>
<td><form:input path="id" /></td>
</tr>
<tr>
<td colspan="2">
<input type="submit" value="Submit"/>
</td>
</tr>
</table>
</form:form>
</body>
</html>
и мой StudentController.java следующим образом:
package com.programcreek.helloworld.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
@Controller
@RequestMapping("/")
public class StudentController {
@RequestMapping(value = "/student", method = RequestMethod.GET)
public ModelAndView student() {
return new ModelAndView("student", "command2", new Student());
}
@RequestMapping(value = "/addStudent", method = RequestMethod.POST)
public String addStudent(@ModelAttribute("HelloWorld")Student student,
ModelMap model) {
System.out.println("Controller2");
model.addAttribute("name", student.getName());
model.addAttribute("age", student.getAge());
model.addAttribute("id", student.getId());
return "result";
}
}
Я всегда читал много примеров и передачи образцов кодов к моему затмению, чтобы попробовать, но для этот случай студента, который был взят из старого примера (весна 2.4).
Благодарим вас за помощь в выяснении проблем. (Я знаю о пружинного документации)
привет ... почему вы даете downvote моему ответу я казнен этому код и получил то же исключение java.lang.IllegalStateException: Ни BindingResult, ни обычный целевой объект для имени компоненты «команды» после добавления Имя_команды = "command2 "в student.jsp его обработанный штраф Я могу вставить полный исходный код каждого xml и java-класса –
Привет, Kunal, я не дал вам ни одного низа. Я благодарен за вашу помощь. Оно работает. Спасибо вам – Timo
мое удовольствие :-) Вы можете принять этот ответ, если это вам помогло. Благодаря :) –