簡體   English   中英

從一種控制器方法到另一種方法的內部轉發(Spring-MVC)

[英]Internal forwarding from one controller method to another (Spring-MVC)

我是春天的新手,所以不確定我該怎么做。我必須使用單控制器方法處理2個用例。

方法已經存在,因此我無法更改其簽名,因為它可能會破壞所有其他功能主義者,這是方法簽名

@RequestMapping(value = "/edit-address", method = RequestMethod.POST)
    public @ResponseBody JsonResponse editAddress()

JsonResponse是具有以下簽名的自定義對象

private String status;
private Object result;
private String steps;

還有另一個要求,我們需要從第三部分驗證此地址,然后根據返回結果顯示彈出窗口。 如果方法簽名不是自定義對象,我可以輕松顯示彈出窗口,但現在不確定如何執行此操作

有沒有辦法實現任何追隨者

  1. 通過此方法將JSP內容發送回視圖而不是JSON對象。
  2. 在內部將控制轉發到控制器中的另一種方法,該方法可以將視圖發送回UI

如何將這個控制器組合到另一個可以控制的控制器中,並以這種方式在內部將調用委派給該控制器:

@Controller
public class WrapperController{
    @Autowired JsonResponseController jsonResponseController;

    @RequestMapping("/custom_jspview")
    public String customRequestMapping(..., Model model){
        JsonResponse jsonResponse = this.jsonResponseController.editAddress();
        model.addAttribute("jsonresponse", "jsonResponse");
        return "myview";
    }

    @RequestMapping("/redirectView")
    public String redirectView(){
         return "redirect:/custom_jspview";
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM