2017-11-13 5 views
1

Wenn ich diese Spring Boot-Anwendung ausführen, bekomme ich eine Ausnahme.Spring-Boot-Anwendung: ApplicationContextException: EmbeddedWebApplicationContext kann nicht gestartet werden

Code:

package com.example.extract.boot; 

import org.springframework.boot.SpringApplication; 
import org.springframework.boot.autoconfigure.EnableAutoConfiguration; 
import org.springframework.boot.builder.SpringApplicationBuilder; 
import org.springframework.boot.web.support.SpringBootServletInitializer; 
import org.springframework.context.annotation.ComponentScan; 
import org.springframework.context.annotation.Configuration; 

@Configuration 
@ComponentScan(basePackages= "com.example.extract") 
@EnableAutoConfiguration 
//@SpringBootApplication 
public class Demo1Application extends SpringBootServletInitializer { 

    private static Class<Demo1Application> applicationClass = Demo1Application.class; 

    public static void main(String[] args) { 
     System.setProperty("org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH","true"); 
     SpringApplication.run(applicationClass, args); 
    } 
    @Override 
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { 
     return application.sources(applicationClass); 

    } 
} 

pom.xml

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>com.example</groupId> 
    <artifactId>Start</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>war</packaging> 

    <name>demo-1</name> 
    <description>extraction of file</description> 

    <parent> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-parent</artifactId> 
     <version>1.5.8.RELEASE</version> 
     <relativePath /> <!-- lookup parent from repository --> 
    </parent> 

    <properties> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
     <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> 
     <java.version>1.8</java.version> 
    </properties> 

    <dependencies> 
     <dependency> 
      <groupId>ch.qos.logback</groupId> 
      <artifactId>logback-classic</artifactId> 
     </dependency> 

<dependency> 
<groupId>ch.qos.logback</groupId> 
<artifactId>logback-core</artifactId> 
</dependency> 

<dependency> 
<groupId>com.google.code.gson</groupId> 
<artifactId>gson</artifactId> 
</dependency> 

<dependency> 
<groupId>com.googlecode.json-simple</groupId> 
<artifactId>json-simple</artifactId> 
</dependency> 

<dependency> 
<groupId>commons-io</groupId> 
<artifactId>commons-io</artifactId> 
<version>2.3</version> 
</dependency> 

<dependency> 
<groupId>commons-lang</groupId> 
<artifactId>commons-lang</artifactId> 
<version>2.2</version> 
</dependency> 

<dependency> 
<groupId>commons-logging</groupId> 
<artifactId>commons-logging</artifactId> 
<version>1.2</version> 
</dependency> 

<dependency> 
<groupId>javax.inject</groupId> 
<artifactId>javax.inject</artifactId> 
<version>1</version> 
</dependency> 

<dependency> 
<groupId>javax.servlet</groupId> 
<artifactId>javax.servlet-api</artifactId> 
<scope>provided</scope> 
</dependency> 

<dependency> 
<groupId>org.apache.poi</groupId> 
<artifactId>poi-ooxml</artifactId> 
<version>3.9</version> 
</dependency> 

<dependency> 
    <groupId>org.apache.poi</groupId> 
    <artifactId>poi</artifactId> 
    <version>3.9</version> 
</dependency> 

<dependency> 
<groupId>javax.ws.rs</groupId> 
<artifactId>javax.ws.rs-api</artifactId> 
<version>2.0-m08</version> 
</dependency> 

<dependency> 
<groupId>org.apache.httpcomponents</groupId> 
<artifactId>httpclient</artifactId> 
<version>4.5.2</version> 
</dependency> 

<dependency> 
<groupId>org.hibernate</groupId> 
<artifactId>hibernate-core</artifactId> 
</dependency> 

<dependency> 
<groupId>org.json</groupId> 
<artifactId>json</artifactId> 
</dependency> 

<dependency> 
<groupId>org.neo4j</groupId> 
<artifactId>neo4j-cypher-compiler-2.2</artifactId> 
<version>2.2.5</version> 
</dependency> 

<dependency> 
<groupId>org.osgi</groupId> 
<artifactId>org.osgi.core</artifactId> 
<version>6.0.0</version> 
</dependency> 

<!-- Dependecy Added for PostGreSql --> 

<dependency> 
<groupId>org.postgresql</groupId> 
<artifactId>postgresql</artifactId> 
<version>9.3-1100-jdbc41</version> 
</dependency> 

<dependency> 
    <groupId>org.hibernate</groupId> 
    <artifactId>hibernate-entitymanager</artifactId> 
</dependency> 

<dependency> 
<groupId>org.scala-lang</groupId> 
<artifactId>scala-library</artifactId> 
<version>2.11.0</version> 
</dependency> 

<dependency> 
<groupId>org.slf4j</groupId> 
<artifactId>slf4j-api</artifactId> 
</dependency> 

<dependency> 
<groupId>org.springframework.boot</groupId> 
<artifactId>spring-boot-starter-data-jpa</artifactId> 
</dependency> 

<dependency> 
    <groupId>org.springframework.data</groupId> 
    <artifactId>spring-data-jpa</artifactId> 
    <version>2.0.0.RELEASE</version> 
</dependency> 

<dependency> 
    <groupId>org.springframework.data</groupId> 
    <artifactId>spring-data-commons</artifactId> 
    <version>2.0.0.RELEASE</version> 
</dependency> 


<dependency> 
<groupId>org.springframework.boot</groupId> 
<artifactId>spring-boot-starter-data-rest</artifactId> 
</dependency> 

<dependency> 
<groupId>org.springframework.boot</groupId> 
<artifactId>spring-boot-starter-test</artifactId> 
<scope>test</scope> 
</dependency> 

<dependency> 
<groupId>org.springframework.boot</groupId> 
<artifactId>spring-boot-starter-web</artifactId> 

<exclusions> 

<exclusion> 
<artifactId>spring-boot-starter-tomcat</artifactId> 
<groupId>org.springframework.boot</groupId> 
</exclusion> 

<exclusion> 
<artifactId>cxf-rt-frontend-jaxrs</artifactId> 
<groupId>org.apache.cxf</groupId> 
</exclusion> 

</exclusions> 
</dependency> 

<!-- https://mvnrepository.com/artifact/org.springframework/spring-web --> 
<dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-web</artifactId> 
    <version>4.3.12.RELEASE</version> 
</dependency> 
<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc --> 
<dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-webmvc</artifactId> 
    <version>4.3.12.RELEASE</version> 
</dependency> 

    </dependencies> 

    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
      </plugin> 

     </plugins> 
    </build> 


</project> 

Trace

> 
    . ____   _   __ _ _ 
/\\/___'_ __ _ _(_)_ __ __ _ \ \ \ \ 
(()\___ | '_ | '_| | '_ \/ _` | \ \ \ \ 
\\/ ___)| |_)| | | | | || (_| | )))) 
    ' |____| .__|_| |_|_| |_\__, |//// 
=========|_|==============|___/=/_/_/_/ 
:: Spring Boot ::  (v1.5.8.RELEASE) 

2017-11-13 22:12:44.037 INFO 4920 --- [   main] c.example.extract.boot.Demo1Application : Starting Demo1Application on DESKTOP-O061U2P with PID 4920 (E:\WorkSpace\demo-1\target\classes started by adity in E:\WorkSpace\demo-1) 
2017-11-13 22:12:44.041 INFO 4920 --- [   main] c.example.extract.boot.Demo1Application : No active profile set, falling back to default profiles: default 
2017-11-13 22:12:44.110 INFO 4920 --- [   main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot[email protected]55ca8de8: startup date [Mon Nov 13 22:12:44 IST 2017]; root of context hierarchy 
2017-11-13 22:12:45.186 INFO 4920 --- [   main] o.s.b.f.s.DefaultListableBeanFactory  : Overriding bean definition for bean 'httpRequestHandlerAdapter' with a different definition: replacing [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.springframework.web.servlet.config.annotation.DelegatingWebMvcConfiguration; factoryMethodName=httpRequestHandlerAdapter; initMethodName=null; destroyMethodName=(inferred); defined in class path resource [org/springframework/web/servlet/config/annotation/DelegatingWebMvcConfiguration.class]] with [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.springframework.data.rest.webmvc.config.RepositoryRestMvcConfiguration; factoryMethodName=httpRequestHandlerAdapter; initMethodName=null; destroyMethodName=(inferred); defined in class path resource [org/springframework/data/rest/webmvc/config/RepositoryRestMvcConfiguration.class]] 
2017-11-13 22:12:45.552 INFO 4920 --- [   main] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring 
2017-11-13 22:12:45.743 INFO 4920 --- [   main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$6edf9e5] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) 
2017-11-13 22:12:45.800 WARN 4920 --- [   main] ationConfigEmbeddedWebApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Unable to start embedded container; nested exception is org.springframework.context.ApplicationContextException: Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContainerFactory bean. 
2017-11-13 22:12:45.809 INFO 4920 --- [   main] utoConfigurationReportLoggingInitializer : 

Error starting ApplicationContext. To display the auto-configuration report re-run your application with 'debug' enabled. 
2017-11-13 22:12:45.822 ERROR 4920 --- [   main] o.s.boot.SpringApplication    : Application startup failed 

org.springframework.context.ApplicationContextException: Unable to start embedded container; nested exception is org.springframework.context.ApplicationContextException: Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContainerFactory bean. 
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:137) ~[spring-boot-1.5.8.RELEASE.jar:1.5.8.RELEASE] 
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:537) ~[spring-context-4.3.12.RELEASE.jar:4.3.12.RELEASE] 
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) ~[spring-boot-1.5.8.RELEASE.jar:1.5.8.RELEASE] 
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:693) [spring-boot-1.5.8.RELEASE.jar:1.5.8.RELEASE] 
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:360) [spring-boot-1.5.8.RELEASE.jar:1.5.8.RELEASE] 
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:303) [spring-boot-1.5.8.RELEASE.jar:1.5.8.RELEASE] 
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1118) [spring-boot-1.5.8.RELEASE.jar:1.5.8.RELEASE] 
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1107) [spring-boot-1.5.8.RELEASE.jar:1.5.8.RELEASE] 
    at com.example.extract.boot.Demo1Application.main(Demo1Application.java:21) [classes/:na] 
Caused by: org.springframework.context.ApplicationContextException: Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContainerFactory bean. 
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.getEmbeddedServletContainerFactory(EmbeddedWebApplicationContext.java:189) ~[spring-boot-1.5.8.RELEASE.jar:1.5.8.RELEASE] 
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.createEmbeddedServletContainer(EmbeddedWebApplicationContext.java:162) ~[spring-boot-1.5.8.RELEASE.jar:1.5.8.RELEASE] 
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:134) ~[spring-boot-1.5.8.RELEASE.jar:1.5.8.RELEASE] 
    ... 8 common frames omitted 

Ich habe alles versucht, die in Stackoverflow in verfügbar erwähnt wird, aber immer noch die gleiche Ausnahme bekommen .

Antwort

0

Bitte erwähnen Sie die Verpackung als "Jar" ​​anstelle von "Krieg", erstellen Sie die Anwendung neu und starten Sie sie neu. Versuchen Sie das und lassen Sie mich wissen, wie es geht.

<packaging>jar</packaging> 

Auch ich sehe, gibt es eine Ausnahme für „Feder-boot-Starter-tomcat“ Abhängigkeit, bitte nehmen Sie es als dies die Ursache zu sein scheint für nicht eingebettet tomcat Behälter zu erfassen.

+0

Ich versuchte mit der Verpackung als Glas Typ, aber immer noch das Problem ist keine andere Lösung gelöst –

+0

@aditya_Rawal, bitte werfen Sie einen Blick auf meine aktualisierte Antwort. –

+0

@aditya_Rawal, Ist das Problem mit der obigen Lösung gelöst? –

Verwandte Themen