Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将spring应用程序上下文导入另一个应用程序上下文?_Java_Spring_Maven_Spring Mvc_Applicationcontext - Fatal编程技术网

Java 如何将spring应用程序上下文导入另一个应用程序上下文?

Java 如何将spring应用程序上下文导入另一个应用程序上下文?,java,spring,maven,spring-mvc,applicationcontext,Java,Spring,Maven,Spring Mvc,Applicationcontext,我有两个spring应用程序上下文。一个是我的应用程序本地的,另一个来自一个maven依赖项 现在,我的applicationContext.xml文件如下所示 <import resource="classpath*:**/sample-applicationContext.xml" /> 不幸的是,当我得到MyClass对象时,对象被创建了,但是我看到MyClass中的依赖项没有被注入 MyClass中自动连接的依赖项是使用sample applicationContext.x

我有两个spring应用程序上下文。一个是我的应用程序本地的,另一个来自一个maven依赖项

现在,我的applicationContext.xml文件如下所示

<import resource="classpath*:**/sample-applicationContext.xml" />
不幸的是,当我得到
MyClass
对象时,对象被创建了,但是我看到
MyClass
中的依赖项没有被注入

MyClass
中自动连接的依赖项是使用
sample applicationContext.xml
文件中的
扫描的bean


有没有办法在我的项目类中使用Maven依赖项中存在的多个应用程序上下文和其中的autowire bean?

我不确定Maven依赖项,但您正在尝试使用spring进行跨上下文的操作。请查看此链接:


编辑:似乎有一种方法,看看这篇文章:

通过以下方法,您可以加载多个spring应用程序上下文文件

ApplicationContext context = 
new ClassPathXmlApplicationContext(new String[] {"sample-applicationContext.xml",   "applicationContext.xml"});

如果您可以在此处发布applicationContext.xml、sample-applicationContext.xml和MyClass代码段,那就太好了。

这不起作用。当我使用ApplicationContext对象
ctx.getBean(MyDependencyBean.class)
调用依赖项bean对象时,我得到的是依赖项bean对象,但是当在
MyClass
中自动连接
MyDependencyBean时。它不是自动连线的。在
MyClass
中,使
MyDependencyBean
成为
transient
以避免
NotSerializableException
。这是不是依赖项不是自动连接的原因:?解决方案是什么?嘿,看看其他类似的问题和答案
ApplicationContext context = 
new ClassPathXmlApplicationContext(new String[] {"sample-applicationContext.xml",   "applicationContext.xml"});