如何在重定向中使用路径变量重定向到另一个控制器。 我尝试了以下方法,但得到了这个错误:
java.lang.IllegalArgumentException:Model没有key' formId'
的值
我是如何实现的:
Long formId = drugType.getFormId();
view = "redirect:/pub/req/customForm/view/{formId}";
并由控制人员收到:
@RequestMapping(method = RequestMethod.POST, value = "/pub/req/customForm/view/{formId}")
String completeCustomForm(@PathVariable Long formId,
@Valid @ModelAttribute CustomFormLayout customFormLayout,
BindingResult errors, HttpServletRequest request, Model model,
RedirectAttributes attr) {
有关如何使用formId值重定向到此控制器的任何想法?
答案 0 :(得分:2)
您可以构建重定向地址字符串:
return "redirect:/pub/req/customForm/view/" + drugType.getFormId();
或者添加一个名为路径变量的模型属性(" formId
")并在视图名称中使用它(这是错误消息告诉你的)
model.addAttribute("formId", drugType.getFormId());
return "redirect:/pub/req/customForm/view/{formId}";
答案 1 :(得分:1)
尝试应用参数:
Long formId = drugType.getFormId();
view = "redirect:/pub/req/customForm/view/"+formId;