java - Spring Controller 未触发

标签 java spring thymeleaf

我在模板中有这张表。表格单元格中有两个按钮

<td>
<form action="#" data-th-action="@{/userdash}" method="POST">
    <input type="hidden" name="id" th:value="${acc.recordId}" />                                                 
    <button type="submit" name="action" value="reengage">Re Engage</button>
    <button type="submit" name="action" value="reinvoice">invoice</button>
</form>     

当点击Re Engage时,我预计会触发以下内容。:

/*User dashboard:customer clicks invoice*/
@PostMapping(value="/userdash", params="action=reinvoice")
public ModelAndView reinvoice(@RequestParam String id,Authentication authentication) {

当点击发票时,我期望:

/*User dashboard:customer clicks re-engage*/
@PostMapping(value="/userdash", params="action=reengage")
public ModelAndView reengage(@RequestParam String recordId, Authentication authentication) {

但是当点击invoice按钮时,只会执行reinvoice方法。 单击reengage按钮时,reengage方法无法执行

我做错了什么?

最佳答案

//*User dashboard:customer clicks re-engage*/
@PostMapping(value="/userdash", params="action=reengage")
public ModelAndView reengage(@RequestParam String recordId, Authentication 
authentication) {

rocordId 更改为 id 并尝试。如下所示:

/*User dashboard:customer clicks re-engage*/
@PostMapping(value="/userdash", params="action=reengage")
public ModelAndView reengage(@RequestParam String id, Authentication 
authentication) {

上面代码中的问题是 requestParam 需要 recordId 并且您将 param 作为 id 传递

关于java - Spring Controller 未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49771809/

相关文章:

java - 如何使用 JSON 在 Spring Rest 中接收和发送日期?

java - 仅为特定用户向标签添加属性

java - Spring thymeleaf MVC 表单不填充对象字段

java - 使用 Spring + Thymeleaf 时出现 java.lang.StackOverflowError

java - 类设计:class implementing an Interface implementing another interface

linux - linux下安装jdk

java - 如何将焦点设置在 SWT TableItem 上

java - 如何在 Hibernate 中为半静态数据映射查找表

java - 访问 BeanDefinitionRegistryPostProcessor 内部的 Spring ApplicationContext

spring - 何时使用 Spring :url tag?