Ich weiß, dass diese Frage auf verschiedene Arten gestellt und beantwortet wurde, aber mit Spring ist alles anders.Spring 4/Weder BindingResult noch einfaches Zielobjekt
Ich bin mit Spring 4 - MVS und will nur mein erstes MVC schaffen - Hello World Implementierung und bekam den Fehler
java.lang.IllegalStateException: Weder BindingResult noch schlicht Zielobjekt für bean namen ' Befehl‘als Anfrage Attribut org.springframework.web.servlet.support.BindStatus. (BindStatus.java:141) org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.get
My Web .xml sieht aus wie dies:
Urform Erstellt Web Application Hello World org.springframework.web.servlet.DispatcherServlet Hello World / contextConfigLocation /WEB-INF/HelloWorld- servlet.xml org.springframework.web.context.ContextLoaderListener My Hello World-servlet.xml wie folgt aus:<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>
Mein student.jsp sieht wie folgt aus:
<%@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>
und meine StudentController.java wie folgt:
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";
}
}
ich immer eine Menge von Beispielen und Transfer Probe-Codes meine Eclipse lesen, um zu versuchen, aber für dieser Fall eines Schülers, der einem alten Beispiel entnommen wurde (Frühling 2.4).
Danke, dass Sie mir geholfen haben, die Probleme zu lösen. (Ich weiß um die feder Dokumentation)
hallo ... warum du downvote auf meine Antwort geben ausgeführt ich diesen Code und bekam gleiche Ausnahme java.lang.IllegalStateException: Weder BindingResult noch ebene Zielobjekt für ‚Befehl‘ Bean Namen nach command = "command2 Hinzufügen "in student.jsp hat es gut funktioniert ich kann den vollen Quellcode von jeder xml und java Klasse einfügen –
Hallo Kunal, ich habe dir keinen Downvote gegeben. Ich bin dankbar für deine Hilfe. Es klappt. Danke dir – Timo
mein Vergnügen :-) Du kannst diese Antwort akzeptieren, wenn es dir geholfen hat. Vielen Dank :) –