栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在ZKoss控制器中可以自动接线Spring bean吗?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在ZKoss控制器中可以自动接线Spring bean吗?

我们使用普通的@Inject批注,但是我们需要对此AbstractVM进行扩展才能使其正常工作:

public abstract class AbstractVM {    public AbstractVM() {        this.autowire(this);    }    protected final void autowire(Object object) {        this.getApplicationContext().getAutowireCapableBeanFactory()     .autowireBean(object);        this.getApplicationContext().getAutowireCapableBeanFactory()     .initializeBean(object, null);    }        protected final ApplicationContext getApplicationContext() {        return WebApplicationContextUtils     .getRequiredWebApplicationContext(Executions.getCurrent()  .getDesktop().getWebApp().getServletContext());    }}

所以是vm的示例:

import javax.inject.Inject;public class OverviewVM extends AbstractVM {    @Inject    private NotaService notaService;    @Inject    private ContactService contactService;

编辑:

@Dunni的评论是正确的。
您不能在构造函数中使用自动装配的Bean。我以前的解决方案是MVVM,但是对于MVC,您需要将该代码放置在

doBeforeCompose
doAfterCompose
方法中而不是在构造函数中。(从中覆盖
SelectorComposer



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/380299.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号