Java Spring 将模型添加到 ModelAndView 引发 StackOverflowException

Java Spring adding model to ModelAndView throws StackOverflowException

有什么方法可以防止在将模型添加到模型和视图时发生 WhosebugException 吗?

我有一个 returns modelandview 的方法,但我发现如果我尝试将模型添加到 modelandview,它会抛出 WhosebugException,因为 Model 已经有 modelandview,是否有任何方法可以在不需要的情况下添加它要先从模型中删除模型和视图吗?

    ((BindingAwareModelMap) model).remove("org.springframework.validation.BindingResult.modelAndView");
    ((BindingAwareModelMap) model).remove("modelAndView");
    modelAndView.addObject(model);
    return modelAndView;

当您使用 ModelAndView 时,Spring 并不期望您手动创建一个 Model

Spring 期望您直接在包含在 ModelAndView.

中的模型对象上设置您希望模型具有的属性

所以应该是

modelAndView.getModel().put("attribute1", object1);
modelAndView.getModel().put("attribute2", object2);