亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

擴展闊葉默認管理控制器

擴展闊葉默認管理控制器

慕田峪9158850 2022-07-20 16:24:29
我想為管理端(broadleaf 框架)創建自己的控制器,它擴展了 AdminBasicEntityController。有我的控制器代碼:    public class AdminArticleController extends AdminBasicEntityController {    @Autowired    private ArticleService articleService;    @Override    public String addEntity(HttpServletRequest request, HttpServletResponse response, Model model, @PathVariable Map<String, String> pathVars, @ModelAttribute("entityForm") EntityForm entityForm, BindingResult result) throws Exception {        return super.addEntity(request, response, model, pathVars, entityForm, result);    }    @Override    public String saveEntityJson(HttpServletRequest request, HttpServletResponse response, Model model, @PathVariable Map<String, String> pathVars, @PathVariable("id") String id, @ModelAttribute("entityForm") EntityForm entityForm, BindingResult result, RedirectAttributes ra) throws Exception {        return super.saveEntityJson(request, response, model, pathVars, id, entityForm, result, ra);//        articleService.updateArticleEntity();    }}我還在 AdminServletConfig 文件中添加了下一個代碼:@Beanpublic AdminBasicEntityController adminBasicEntityController() {    return new AdminArticleController();}
查看完整描述

1 回答

?
開滿天機

TA貢獻1786條經驗 獲得超13個贊

你很親近!要覆蓋現有的 Broadleaf bean,請務必使用注釋中聲明的 bean 名稱。將您的 bean 命名為“blAdminBasicEntityController”,如下所示:


@Bean

public AdminBasicEntityController blAdminBasicEntityController() {

    return new AdminArticleController();

}

您看到的錯誤是由于有兩個具有相同映射的 bean。發生這種情況是因為 AdminBasicEntityController 帶有注釋@Controller("blAdminBasicEntityController"),這意味著它將被組件掃描拾取并創建一個名為 的 bean blAdminBasicEntityController。由于 AdminArticleController 擴展了 AdminBasicEntityController,一旦創建了 AdminArticleController bean,AdminBasicEntityController 中的每個映射都會有 2 個映射。解決方案是覆蓋 Broadleaf bean,而不是添加一個額外的。


查看完整回答
反對 回復 2022-07-20
  • 1 回答
  • 0 關注
  • 77 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號