在Spring控制器中发送表单数据而不使用注释
我想在控制器中发送表单输入数据,而不使用注释 在这段代码中,我试图从jsp文件中获取在Spring控制器中发送表单数据而不使用注释,spring,spring-mvc,spring-form,Spring,Spring Mvc,Spring Form,我想在控制器中发送表单输入数据,而不使用注释 在这段代码中,我试图从jsp文件中获取employeeNo,empName,deptNo,我在jsp文件中使用了Spring,标记,但当我试图获取值时,它没有获取值,并引发异常: java.lang.IllegalStateException: Neither BindingResult nor plain target object for bean name 'command' available as request attribute
employeeNo
,empName
,deptNo
,我在jsp文件中使用了Spring
,
标记,但当我试图获取值时,它没有获取值,并引发异常:
java.lang.IllegalStateException: Neither BindingResult nor plain target object
for bean name 'command' available as request attribute
我的控制器:
package com.nousinfo.tutorial.controllers;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.dao.EmptyResultDataAccessException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.multiaction.MultiActionController;
import com.nousinfo.tutorial.service.impl.EmployeeServiceImpl;
import com.nousinfo.tutorial.service.model.EmployeeBO;
public class SearchEmployeeController extends MultiActionController {
private EmployeeServiceImpl employeeServiceImpl;
public void setEmployeeServiceImpl(EmployeeServiceImpl employeeServiceImpl) {
this.employeeServiceImpl = employeeServiceImpl;
}
public ModelAndView searchByEmpNo(HttpServletRequest request,
HttpServletResponse response) throws Exception {
EmployeeBO empDetails = null;
try {
if (employeeServiceImpl.getEmployee(Long.parseLong(request
.getParameter("employeeNo"))) != null) {
empDetails = employeeServiceImpl.getEmployee(Long
.parseLong(request.getParameter("employeeNo")));
}
} catch (EmptyResultDataAccessException e) {
return new ModelAndView("successSingleEmp", "empDetails",
empDetails);
}
return new ModelAndView("successSingleEmp", "empDetails", empDetails);
}
public ModelAndView searchByEmpName(HttpServletRequest request,
HttpServletResponse response) throws Exception {
List<EmployeeBO> listEmployeeBO = employeeServiceImpl
.findEmployees(request.getParameter("empName"));
return new ModelAndView("successMultipleEmps", "listEmployeeBO",
listEmployeeBO);
}
public ModelAndView searchByDeptNo(HttpServletRequest request,
HttpServletResponse response) throws Exception {
List<EmployeeBO> listEmployeeBO = employeeServiceImpl
.getAllEmployeeByDeptid(request.getParameter("deptNo"));
return new ModelAndView("successMultipleEmps", "listEmployeeBO",
listEmployeeBO);
}
}
package com.nousinfo.tutorial.controllers;
导入java.util.List;
导入javax.servlet.http.HttpServletRequest;
导入javax.servlet.http.HttpServletResponse;
导入org.springframework.dao.EmptyResultDataAccessException;
导入org.springframework.web.servlet.ModelAndView;
导入org.springframework.web.servlet.mvc.multiaction.MultiActionController;
导入com.nousinfo.tutorial.service.impl.EmployeeServiceImpl;
导入com.nousinfo.tutorial.service.model.EmployeeBO;
公共类SearchEmployeeController扩展了MultiActionController{
私人雇员服务公司雇员服务公司;
public void setEmployeeServiceImpl(EmployeeServiceImpl EmployeeServiceImpl){
this.employeeserviceinpl=employeeserviceinpl;
}
公共模型和视图按EMPNO搜索(HttpServletRequest,
HttpServletResponse)引发异常{
EmployeeBO empDetails=null;
试一试{
if(employeeServiceImpl.getEmployee(Long.parseLong)(请求
.getParameter(“employeeNo”)!=null){
empDetails=employeeServiceImpl.getEmployee(长
.parseLong(request.getParameter(“employeeNo”));
}
}捕获(EmptyResultDataAccessE异常){
返回新模型和视图(“successSingleEmp”、“EMPDailets”,
环境管理计划(详情);
}
返回新的ModelAndView(“successSingleEmp”、“EMPDails”、EMPDails);
}
公共模型和视图按EMPNAME名称搜索(HttpServletRequest,
HttpServletResponse)引发异常{
列表listEmployeeBO=employeeserviceinpl
.findeEmployees(request.getParameter(“empName”);
返回新的model和view(“successMultipleEmps”,“listEmployeeBO”,
listEmployeeBO);
}
public Model和View searchByDeptNo(HttpServletRequest,
HttpServletResponse)引发异常{
列表listEmployeeBO=employeeserviceinpl
.getAllEmployeeByDeptid(request.getParameter(“deptNo”);
返回新的model和view(“successMultipleEmps”,“listEmployeeBO”,
listEmployeeBO);
}
}
我的jsp文件:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<%@ taglib uri="http://www.springframework.org/tags" prefix="spring"%>
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<fmt:setBundle basename="ApplicationResources" />
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Employee Search Page</title>
</head>
<body>
<form:form action="search.spring" method="post">
<table border="0">
<tr>
<td><form:label path="employeeNo">Employee_ID</form:label> <form:input
path="employeeNo" /></td>
<td><input type="submit" name="method" value="FindById" /></td>
</tr>
<tr>
<td><form:label path="empName">Employee_Name</form:label> <form:input
path="empName" /></td>
<td><input type="submit" name="method" value="FindByName" /></td>
</tr>
<tr>
<td><form:label path="deptNo">Employee_Name</form:label> <form:input
path="deptNo" /></td>
<td><input type="submit" name="method" value="FindByDeptNO" /></td>
</tr>
<tr>
<td colspan="2" align="center"><font size=3>For
Searching the employees by<b>Employee Name</b><br />you can use %
match all the records with the given pattern
</font><br /> <font size="2"> <i>e.g <b> for search by</b>EmployeeName<br />
matches alL the employees whose name starts with character <b>S</b></i></font></td>
</tr>
</table>
</form:form>
</body>
</html>
员工搜索页面
雇员身份证
雇员姓名
雇员姓名
对于
按员工姓名搜索员工
您可以使用%
将所有记录与给定模式匹配
例如按员工姓名搜索
匹配名称以字符S开头的所有员工
我的xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<beans
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans">
<import resource="/services-context.xml" />
<bean id="searchController"
class="com.nousinfo.tutorial.controllers.SearchEmployeeController">
<property name="employeeServiceImpl" ref="employeserviceImpl" />
<property name="methodNameResolver" ref="methodNameResolver" />
</bean>
<bean id="myurlmapping"
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="search.spring">searchController</prop>
</props>
</property>
</bean>
<bean id="methodNameResolver"
class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
<property name="paramName" value="method" />
</bean>
<!-- configuring BeanNameViewResolver -->
<bean class="org.springframework.web.servlet.view.BeanNameViewResolver"></bean>
<!-- configuring exception Resolver -->
<bean
class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
<property name="exceptionMappings">
<props>
<prop key="org.springframework.dao.DAOException">dberrorView</prop>
<prop key="java.lang.NumberFormatException">notANumber</prop>
</props>
</property>
</bean>
<!-- configuring views required to render the view for /search.spring -->
<bean name="successSingleEmp" class="org.springframework.web.servlet.view.JstlView">
<property name="url" value="/WEB-INF/EmployeeDetail.jsp" />
</bean>
<bean name="successMultipleEmps" class="org.springframework.web.servlet.view.JstlView">
<property name="url" value="/WEB-INF/EmployeeList.jsp" />
</bean>
<bean name="dberrorView" class="org.springframework.web.servlet.view.JstlView">
<property name="url" value="/WEB-INF/DBError.jsp" />
</bean>
<bean name="notANumber" class="org.springframework.web.servlet.view.JstlView">
<property name="url" value="/WEB-INF/NotANumberError.jsp" />
</bean>
<!-- CONFIGURING THE MEASSAGE RESOURCES FOR THIS APPLICTION CONTEXT -->
<bean id="messageSource"
class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="basename" value="/com/nousinfo/resources/ApplicationResources" />
</bean>
</beans>
搜索控制器
dberrorView
编号
错误的原因是请求中没有可将字段绑定到的对象。因此,在返回此视图时,需要向jsp传递一个对象
在方法中,返回上述jsp和表单
这样做
我没有在您的代码中看到任何注释。返回jsp文件的代码在哪里?@AvinashT。我不想要用过的注释,所以没有注释,我正在尝试这样做,就像我在这里粘贴的一样,现在请告诉我如何在我的控制器中检索请求的数据,因为在jsp中我使用了spring表单标记,我不想要用过的注释controller@shazinltc在xml文件中,你可以从他们的“我导航到我的视图”(jsp)中找到我的jsp@亨利·查尔斯:那是员工搜索页面?
public ModelAndView yourMethodForView(){
//Assuming Employee object has employeeNo and empName
Employee emp = new Employee();
//your code
return new ModelAndView("yourFormJspName","employee",emp);
}