Spring不扫描和注册托管bean@AutoWired不注入任何内容,并且#{SpringManagedBean}在EL中不可用

Spring不扫描和注册托管bean@AutoWired不注入任何内容,并且#{SpringManagedBean}在EL中不可用,spring,spring-boot,spring-mybatis,Spring,Spring Boot,Spring Mybatis,Spring不会在Spring引导应用程序中扫描和注册托管bean。 我不知道如何配置springboot+JSF+MyBatic应用程序 Application.java @Configuration @ComponentScan(basePackages={""}) @EnableAutoConfiguration public class Application extends SpringBootServletInitializer { public static void m

Spring不会在Spring引导应用程序中扫描和注册托管bean。 我不知道如何配置
springboot+JSF+MyBatic
应用程序

Application.java

@Configuration
@ComponentScan(basePackages={""})
@EnableAutoConfiguration
public class Application extends SpringBootServletInitializer {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

    @Bean
    public ServletRegistrationBean servletRegistrationBean() {
        FacesServlet servlet = new FacesServlet();
        ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(servlet, "*.jsf");
        return servletRegistrationBean;
    }

}
MyDataSourceConfig.java

@Configuration
@MapperScan("com.jg.myapp.mapper")
public class MyDataSourceConfig {

    @Autowired
    private DataSource dataSource; <----- it is also problem. cannot inject DataSource.

    @Bean
    public SqlSessionFactory sqlSessionFactory() throws Exception {
        SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
        sessionFactory.setDataSource(dataSource);
        sessionFactory.setConfigLocation(new ClassPathResource("/mybatis-config.xml"));
        return sessionFactory.getObject();
    }
}
mybatis-config.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
  PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <settings>
        <setting name="mapUnderscoreToCamelCase" value="true"/>
    </settings>
</configuration>
    <application>
        <el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver> 
    </application>
    <lifecycle>
        <phase-listener>org.springframework.web.jsf.DelegatingPhaseListenerMulticaster</phase-listener>
    </lifecycle>

src\main\webapp\WEB-INF\faces-config.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
  PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <settings>
        <setting name="mapUnderscoreToCamelCase" value="true"/>
    </settings>
</configuration>
    <application>
        <el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver> 
    </application>
    <lifecycle>
        <phase-listener>org.springframework.web.jsf.DelegatingPhaseListenerMulticaster</phase-listener>
    </lifecycle>

org.springframework.web.jsf.el.SpringBeanFacesELResolver
org.springframework.web.jsf.DelegatingPhaseListenerMulticaster
src\main\webapp\WEB-INF\WEB.xml

    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.jsf</url-pattern>
    </servlet-mapping>

Facesservlet
javax.faces.webapp.FacesServlet
1.
Facesservlet
*.jsf
pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
    xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <modelVersion>4.0.0</modelVersion>
    <groupId>de.beyondjava</groupId>
    <artifactId>PrimeFacesOnSpringBoot</artifactId>
    <version>1.0</version>
    <inceptionYear>2014</inceptionYear>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.2.5.RELEASE</version>
    </parent>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
            <version>1.1.4.RELEASE</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>4.1.6.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>4.1.6.RELEASE</version>
        </dependency>       
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>4.1.6.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context-support</artifactId>
            <version>4.1.6.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-tx</artifactId>
            <version>4.1.6.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-orm</artifactId>
            <version>4.1.6.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>4.1.6.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>4.1.6.RELEASE</version>
        </dependency>
        <!-- DB RELATED -->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.3.0</version>
        </dependency>
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis-spring</artifactId>
            <version>1.2.3</version>
        </dependency>
        <dependency>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-maven-plugin</artifactId>
            <version>1.3.2</version>
        </dependency>       
        <dependency>
            <groupId>com.sun.faces</groupId>
            <artifactId>jsf-impl</artifactId>
            <version>2.2.8-02</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-core</artifactId>
            <version>7.0.34</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>com.sun.faces</groupId>
            <artifactId>jsf-api</artifactId>
            <version>2.2.8-02</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.primefaces</groupId>
            <artifactId>primefaces</artifactId>
            <version>5.0</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-logging-juli</artifactId>
            <version>7.0.34</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-jasper</artifactId>
            <version>7.0.34</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.4</version>
        </dependency>
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.4</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.8</version>
        </dependency>
        <dependency>
            <groupId>joda-time</groupId>
            <artifactId>joda-time</artifactId>
            <version>2.8.1</version>
        </dependency>
    </dependencies>
    <build>
        <outputDirectory>src/main/webapp/WEB-INF/classes</outputDirectory>
        <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.0</version>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

4.0.0
德比昂达
PrimeFacesOnSpringBoot
1
2014
org.springframework.boot
spring启动程序父级
1.2.5.1发布
org.springframework.boot
弹簧靴起动器
1.1.4.1发布
编译
org.springframework
弹簧芯
4.1.6.1发布
org.springframework
弹簧网
4.1.6.1发布
org.springframework
spring上下文
4.1.6.1发布
org.springframework
spring上下文支持
4.1.6.1发布
org.springframework
德克萨斯州春季
4.1.6.1发布
org.springframework
春季甲虫
4.1.6.1发布
org.springframework
SpringJDBC
4.1.6.1发布
org.springframework
弹簧试验
4.1.6.1发布
org.mybatis
mybatis
3.3.0
org.mybatis
mybatis泉
1.2.3
org.mybatis.generator
mybatis生成器maven插件
1.3.2
com.sun.faces
jsf impl
2.2.8-02
编译
org.apache.tomcat.embed
tomcat嵌入式内核
7.0.34
编译
com.sun.faces
JSFAPI
2.2.8-02
编译
org.primefaces
素面
5
编译
org.apache.tomcat.embed
tomcat嵌入式日志
7.0.34
编译
org.apache.tomcat.embed
汤姆卡特·贾斯珀
7.0.34
编译
org.apache.commons
commons-lang3
3.4
公地io
公地io
2.4
mysql
mysql连接器java
5.1.8
乔达时间
乔达时间
2.8.1
src/main/webapp/WEB-INF/classes
maven编译器插件
3
1.7
1.7

对于初学者,停止混合框架版本(boot 1.2.5和1.1.4)。另外,spring boot已经为您管理了这些版本。当您使用SpringBoot时,您的web.xml没有做任何事情。您是在运行嵌入式容器还是在部署war。还有什么不起作用呢?我希望
PostService
的名称应该是
PostService
,除非您在@Service或@Bean中定义自己的名称。为了正确创建胖jar,您缺少了spring引导插件。总而言之,很多信息缺失,而且与您的示例中的情况不符。+1。重写由spring boot starter父级管理的allready版本的依赖项会给您带来很多麻烦。