Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.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
Spring-ApplicationContextInitializer实现内部自动连接_Spring_Spring Mvc_Autowired - Fatal编程技术网

Spring-ApplicationContextInitializer实现内部自动连接

Spring-ApplicationContextInitializer实现内部自动连接,spring,spring-mvc,autowired,Spring,Spring Mvc,Autowired,我有一个ApplicationContextInitializer,用于初始化某些应用程序属性。我试图将spring的ResourceLoader和restclient自动连接到其中,但无法。是否可以在ApplicationContextInitializer实现中自动连线 @Component public class MyApplicationContextInitializer implements ApplicationContextInitialize

我有一个ApplicationContextInitializer,用于初始化某些应用程序属性。我试图将spring的ResourceLoader和restclient自动连接到其中,但无法。是否可以在ApplicationContextInitializer实现中自动连线

 @Component
    public class MyApplicationContextInitializer implements
            ApplicationContextInitializer<ConfigurableApplicationContext> {

    @Autowired
    private ResourceLoader resourceLoader;

    @Autowired
    private MyRestClient restClient;

   // some init methods

}
@组件
公共类MyApplicationContextInitializer实现
ApplicationContextInitializer{
@自动连线
私有资源加载器;
@自动连线
私人MyRestClient;
//一些init方法
}
My autowired.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans
    xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd"
    default-lazy-init="true">

    <context:property-placeholder/>

    <context:annotation-config />
    <context:component-scan base-package="com.package.containing.classes" />

</beans>


最近我遇到了同样的陷阱。我试图在一个不起作用的
ApplicationContextInitializer
中自动关联一个属性。 症状是,我的应用程序在启动时只将标题打印到控制台,然后悄悄退出。原因是由于我的属性为null,因此在
initialize
方法中引发了
NullPointerException
。在我的例子中,NPE是一个特定于代码的问题,它表明Spring没有处理
@Autowire
注释,因为如果是这样,Spring应该在初始化中失败,因为缺少与我的属性匹配的bean定义,而不是注入null


简而言之:Spring不执行到
ApplicationContextInitializer

的自动连接最近我遇到了同样的陷阱。我试图在一个不起作用的
ApplicationContextInitializer
中自动关联一个属性。 症状是,我的应用程序在启动时只将标题打印到控制台,然后悄悄退出。原因是由于我的属性为null,因此在
initialize
方法中引发了
NullPointerException
。在我的例子中,NPE是一个特定于代码的问题,它表明Spring没有处理
@Autowire
注释,因为如果是这样,Spring应该在初始化中失败,因为缺少与我的属性匹配的bean定义,而不是注入null


简言之:Spring不执行到
ApplicationContextInitializer

的自动连接。请添加更多详细信息,如开始和上下文类的错误。请添加更多详细信息,例如,在处理autowire之前,您在开始时遇到的错误以及您的上下文类
ApplicationContextInitializer
在生命周期中太早。您最终做了什么?
ApplicationContextInitializer
在生命周期中太早,在处理autowire之前。你最后做了什么?