Java 从GET Jsp到POST Jsp(表单)的Web流问题-Spring MVC注释
我有一个带有超链接的JSPJava 从GET Jsp到POST Jsp(表单)的Web流问题-Spring MVC注释,java,Java,我有一个带有超链接的JSP <table> <tr> <td>Product Name : </td> <td>${product.name}</td> </tr> <tr> <td>Description:</td> <td>${product.description}</td> </tr> <tr&g
<table>
<tr>
<td>Product Name : </td>
<td>${product.name}</td>
</tr>
<tr>
<td>Description:</td>
<td>${product.description}</td>
</tr>
<tr>
<td>Price:</td>
<td>${product.price}</td>
</tr>
<tr><td> </td></tr>
<tr>
<td>
<a href="../shopbasket/populateBasket?code=${product.productCode}&name=${categoryName}">Add to shopping basket</a>
</td>
</tr>
<tr><td> </td></tr>
<tr><td> </td></tr>
<tr>
<td>
<table>
<tr>
<td><a href="<c:url value="../index.html"/>">Return to Home Page</a></td>
<td> </td>
<td><a href="<c:url value="/j_spring_security_logout"/>">Logout</a>
(<security:authentication property="principal.username" />)
</td>
</tr>
</table>
</td>
</tr>
}
然后表格
<form:form commandName="basket">
<table>
<tr>
<td>
<table>
<tr>
<td>Customer Name : </td>
<td>${customer}</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<table width="600" border="1" cellspacing="0" cellpadding="2"
border="0">
<thead>
<tr>
<td>Products:</td>
</tr>
<tr>
<td>Product Name</td>
<td>Product Code</td>
<td>Description</td>
<td>Price</td>
<td>Remove</td>
</tr>
</thead>
<tbody>
<c:forEach items="${basket.products}" var="product">
<tr>
<td>${product.name}</td>
<td>${product.productCode}</td>
<td>${product.description}</td>
<td>${product.price}</td>
<td><form:checkbox path="removeItemCodes" value="${product.productCode}" /></td>
</tr>
</c:forEach>
</tbody>
</table>
</td>
</tr>
<tr>
<td>
<table>
<tr>
<td>Total Price</td>
<td> </td>
<td>${totalPrice}</td>
</tr>
<tr>
<td>Total Items</td>
<td> </td>
<td>${totalItems}</td>
</tr>
</table>
</td>
</tr>
<tr><td> </td></tr>
<tr>
<td><input type="submit" value="Remove Items" /></td>
</tr>
<tr><td> </td></tr>
<tr><td> </td></tr>
<tr>
<td>
<table>
<tr>
<td><a href="<c:url value="../index.html"/>">Return to Home Page</a></td>
<td> </td>
<td><a href="<c:url value="/j_spring_security_logout"/>">Logout</a>
(<security:authentication property="principal.username" />)
</td>
</tr>
</table>
</td>
</tr>
</table>
客户名称:
${customer}
产品:
品名
产品代码
描述
价格
去除
${product.name}
${product.productCode}
${product.description}
${product.price}
总价
${totalPrice}
项目总数
${totalItems}
()
当我按下来自第一个JSP“”的链接时,控制器成功地执行方法populateBasket并加载表单。但是当我提交表单时,我希望它调用POST方法(basketItems)。。。但事实并非如此,按submit按钮总是执行GET方法(populateBasket)。。如果我直接从索引页加载表单,则不会发生这种情况,它会成功加载。问题是什么时候从该JSP发出?如果希望表单提交到与用于检索页面的URL不同的URL,则需要在表单上显式设置
操作。否则Spring将用当前URL填充它
<form:form commandName="basket">
<table>
<tr>
<td>
<table>
<tr>
<td>Customer Name : </td>
<td>${customer}</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<table width="600" border="1" cellspacing="0" cellpadding="2"
border="0">
<thead>
<tr>
<td>Products:</td>
</tr>
<tr>
<td>Product Name</td>
<td>Product Code</td>
<td>Description</td>
<td>Price</td>
<td>Remove</td>
</tr>
</thead>
<tbody>
<c:forEach items="${basket.products}" var="product">
<tr>
<td>${product.name}</td>
<td>${product.productCode}</td>
<td>${product.description}</td>
<td>${product.price}</td>
<td><form:checkbox path="removeItemCodes" value="${product.productCode}" /></td>
</tr>
</c:forEach>
</tbody>
</table>
</td>
</tr>
<tr>
<td>
<table>
<tr>
<td>Total Price</td>
<td> </td>
<td>${totalPrice}</td>
</tr>
<tr>
<td>Total Items</td>
<td> </td>
<td>${totalItems}</td>
</tr>
</table>
</td>
</tr>
<tr><td> </td></tr>
<tr>
<td><input type="submit" value="Remove Items" /></td>
</tr>
<tr><td> </td></tr>
<tr><td> </td></tr>
<tr>
<td>
<table>
<tr>
<td><a href="<c:url value="../index.html"/>">Return to Home Page</a></td>
<td> </td>
<td><a href="<c:url value="/j_spring_security_logout"/>">Logout</a>
(<security:authentication property="principal.username" />)
</td>
</tr>
</table>
</td>
</tr>
</table>