相关疑难解决方法(0)

以编程方式将Bean添加到Spring Web App上下文

由于插件架构,我正在尝试以编程方式将bean添加到我的webapp中.我有一个通过@Component注释创建的Spring bean ,我正在实现该ApplicationContextAware接口.

我的覆盖功能如下所示:

@Override
public void setApplicationContext(ApplicationContext applicationContext)
        throws BeansException {

    // this fails
    this.applicationContext = (GenericWebApplicationContext) applicationContext;
 }
Run Code Online (Sandbox Code Playgroud)

基本上,我无法弄清楚如何将bean添加到setApplicationContext的applicationContext对象.任何人都可以告诉我我是怎么做错的方式吗?

好的,这就是我最终得到的解决方案:

@Override
public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry bdr)
        throws BeansException {
    BeanDefinition definition = new RootBeanDefinition(
            <My Class>.class);

    bdr.registerBeanDefinition("<my id>", definition);
}
Run Code Online (Sandbox Code Playgroud)

java spring web-applications dynamic

52
推荐指数
3
解决办法
10万
查看次数

标签 统计

dynamic ×1

java ×1

spring ×1

web-applications ×1