gpt4 book ai didi

spring - 在OSGi bundle 中访问Spring上下文

转载 作者:行者123 更新时间:2023-12-04 20:23:25 25 4
gpt4 key购买 nike

我有一个OSGi捆绑包,该捆绑包使用bundle-context.xml文件初始化了一个bean。

<bean id="myBean" class="test.MyClass">
<property name="output" value="test"/>
</bean>

我有一个工厂类,需要获取Bean实例。在非OSGI领域中,我总是只执行以下操作来初始化上下文并获取Bean的句柄...
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("bundle-context.xml");
MyClass bean = (MyClass) applicationContext.getBean("myBean");

但是,在OSGI(FuseESB 4.2,Servicemix4)中,容器会自动加载bundle-context.xml文件并初始化spring上下文。如果我显式加载上下文(使用上面的代码),那么将创建2个上下文(这很糟糕)。那么,获得对相同上下文/bean的句柄的正确方法是什么?

最佳答案

我想是由Spring Dynamic Modules加载您的上下文的-所以您不应该自己做。看一下Spring DM documentation-这将很有用。

Spring DM会将应用程序上下文发布为OSGi服务。查看说明here并遵循建议。

另请参阅以下我的评论。

关于spring - 在OSGi bundle 中访问Spring上下文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3789201/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com