我有两个Spring应用程序上下文,一个是我的应用程序的本地上下文,另一个来自Maven依赖项之一。
现在,我applicationContext.xml文件看起来像这样。
<import resource="classpath*:**/sample-applicationContext.xml" />
并且我在sample-applicationContext.xml
文件中有<context:component-scan>
,该文件用于扫描组件。
现在,当我做以下事情时..
ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext.xml");
MyClass m=ctx.getBean(MyClass.class);
不幸的是,当我获得MyClass
对象时,该对象被创建,但是,我看到MyClass
中的依赖项没有被注入。
在MyClass
中自动连接的依赖关系是使用sample-applicationContext.xml
文件中的<context:component-scan>
扫描的Bean。
有没有办法在我的项目类中利用Maven依赖项中存在的多个应用程序上下文和其中的autowire bean?
2条答案
按热度按时间4smxwvx51#
我不确定maven的依赖关系,但是您正在尝试使用spring来做一些类似于跨上下文的事情。http://blog.imaginea.com/cross-context-communication-between-web-applications/
EDIT:看来是有办法了,看看这个帖子:Loading spring application context files that are inside a jar in classpath
yqlxgs2m2#
通过以下方式,您可以加载多个springapplicationContext文件。
如果您能在这里发布applicationContext.xml、sample-applicationContext.xml和MyClass代码段,那就更好了。