单击提交按钮时,我的应用程序有以程:
1)viewActivity 方法从 ActivityController 调用.java
ActivityController.java
@ActionMapping(params = "ActivityController=showActivity")
public void viewActivity(@RequestParam Integer index, ActionResponse response, Model model, @ModelAttribute Header header,
....
model.addAttribute("recoveryForm", new RecoveryForm(detailsResult.getDetails()));
response.setRenderParameter("ServiceController", "showService");
}
2)然后从serviceConroller调用showRecovery方法,如下所示:
ServiceController.JAVA
@RenderMapping(params = "ServiceController=showService")
public String showRecovery(@ModelAttribute recoveryForm form, @ModelAttribute header header) {
.....
return service;
}
然后显示我的服务.jsp
基本上,我必须显示一个变量的值,该变量是在DetailsResult.getDetails()对象中找到的detailName,我已将其添加到我的模型中可以在 ActivityController 中找到的 viewActivity 方法中看到.java显示 ealier。
我知道当我们添加 model.addAttribute 时,它应该能够使用以下标签显示在这个 jsp 上:
<form:input path="..." />
但在这种情况下,它被添加为构造函数参数,如下所示:
model.addAttribute("recoveryForm", new RecoveryForm(detailsResult.getDetails()));
我的恢复表单上有以下变量:
public class RecoveryForm implements Serializable {
private CDetails Cdlaim;
private Action addAction;
private String addRemark;
private String remarks;
public RecoveryForm(CDetails Cdlaim) {
...
}
...
}
但是我没有详细信息导致我的恢复表单。
知道我如何在我的服务中获得 DetailsResult.getDetails() 中的值.jsp?
我相信你看错了。DetailsResult.getDetails()
的值显然以某种方式作为属性存储在RecoveryForm
中。因此,我假设您的RecoveryForm
如下所示:
public class RecoveryForm {
private String details;
public RecoveryForm(String details) {
this.details = details;
}
public String getDetails() {
return details;
}
}
当您绑定到 jsp 中的表单时,您需要将<form:input ...>
标记嵌套在 <form:form ...>
标记中:
<form:form commandName="recoveryForm" ...>
<form:input path="details" ... />
</form:form>
commandName
是告诉表单您将从中提取表单值的模型对象的关键。在本例中,您将从名为 recoveryForm
的RecoveryForm
实例获取 details
属性。有意义?