Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法从jsp获取参数到spring控制器_Java_Spring_Jsp_Spring Mvc - Fatal编程技术网

Java 无法从jsp获取参数到spring控制器

Java 无法从jsp获取参数到spring控制器,java,spring,jsp,spring-mvc,Java,Spring,Jsp,Spring Mvc,我无法从JSP获取到Spring控制器的值,下面是我的代码片段 在JSP中,我定义了如下参数 <input type="hidden" id="categoryId" name="categoryId" value="<c:out value="${category.categoryId}"/>" /> <input type="hidden" id="sortBy" name="sortBy" value="<c:out value="${requestSc

我无法从JSP获取到Spring控制器的值,下面是我的代码片段

在JSP中,我定义了如下参数

<input type="hidden" id="categoryId" name="categoryId" value="<c:out value="${category.categoryId}"/>" />
<input type="hidden" id="sortBy" name="sortBy" value="<c:out value="${requestScope.sortBy}"/>" />
<input type="hidden" id="orderBy" name="orderBy" value="<c:out value="${requestScope.orderBy}"/>" />
我仍然没有得到价值


请帮忙。。先谢谢你

您需要使用Spring输入标记而不是HTML输入标记

首先定义名称空间:

<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>

然后使用弹簧输入标记:

<form:input type="hidden" id="categoryId" path="categoryId" value="<c:outvalue="${category.categoryId}"/>" />

首先,您可以使用类似于
的spring选项卡来定义输入字段 (
),并包含JSP中要发布到服务器端的所有字段。这应该行得通

其次,在控制器中,您可以定义一个类似ListDTO的对象,它包含您从JSP页面发布的所有字段,并将
@ModelAttribute
添加到方法的参数中,如下所示:

@RequestMapping(value = "category/listCategory.htm")
public ModelAndView getList(HttpServletRequest request,@ModelAttribute ListDTO listDTO) {

}

谢谢,在我使用spring表单标记和一个单独的DTO对象从JSP传输数据之后,这对我来说是有效的,但我仍然不明白为什么我不能从控制器中的请求对象访问输入字段。
无论如何,多亏了你们两位,我的问题解决了。

你们需要发布整个jsp页面,以查看你们的问题在哪里。这会产生许多问题,可能您没有包含输入的表单标记。
<form:input type="hidden" id="categoryId" path="categoryId" value="<c:outvalue="${category.categoryId}"/>" />
@RequestMapping(value = "category/listCategory.htm")
public ModelAndView getList(HttpServletRequest request,@ModelAttribute ListDTO listDTO) {

}