Tuomas Toivonen
Tuomas Toivonen

Reputation: 23502

Apache Camel, CXF: java.lang.IllegalStateException: Locker is not reentrant

I'm trying to build a simple integration application with Spring boot, Camel, CXF and ActiveMQ. Here is the camel context.

<!-- this is a spring XML file where we have Camel embedded -->
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camel="http://camel.apache.org/schema/spring"
    xmlns:cxf="http://camel.apache.org/schema/cxf"
    xsi:schemaLocation="
       http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
       http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd
       http://camel.apache.org/schema/cxf http://camel.apache.org/schema/cxf/camel-cxf.xsd">

    <import resource="classpath:META-INF/cxf/cxf.xml"/>
    <import resource="classpath:META-INF/cxf/cxf-servlet.xml"/>

    <bean class="org.apache.camel.component.cxf.transport.CamelTransportFactory" lazy-init="false">
        <property name="bus" ref="cxf"/>
        <property name="camelContext" ref="camelContext"/>
        <property name="checkException" value="true"/>
        <property name="transportIds">
            <list>
                <value>http://cxf.apache.org/transports/camel</value>
            </list>
        </property>
    </bean>

    <bean id="messageLoggerBean" class="tutoivon.api.camel.MessageLoggerBean" />

    <cxf:cxfEndpoint id="endpoint" address="http://localhost:1010/hello"
        serviceClass="net.webservicex.GlobalWeatherSoap" wsdlURL="META-INF/globalweather.wsdl">
    </cxf:cxfEndpoint>

    <!-- Here we define Camel, notice the namespace it uses -->
    <camelContext id="camelContext" xmlns="http://camel.apache.org/schema/spring">

        <!-- Camel route to move messages from the ActiveMQ inbox to its outbox 
            queue -->
        <route id="cxfToJMSRoute">
            <from uri="cxf:bean:endpoint" />
            <log message="test" />
            <wireTap uri="direct:logInfo" />
            <to uri="activemq:queue:api" />
        </route>

        <route id="loggingRoute">
            <from uri="direct:logInfo" />
            <to uri="bean:messageLoggerBean" />
        </route>

    </camelContext>

    <bean id="activemq" class="org.apache.activemq.camel.component.ActiveMQComponent">
        <property name="brokerURL" value="http://127.0.0.1:61616"/>
    </bean>

</beans>

The Spring boot application

@SpringBootApplication
@ImportResource({
    "classpath:camel-config.xml"
})
@Import({
//  WebServiceContext.class
})
public class Application {

    public static void main(String[] args) {

        System.out.println("Starting Spring Boot Application...");
        SpringApplication.run(Application.class, args);
    }
}

And POM

<?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/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>tutoivon</groupId>
    <artifactId>Messaging</artifactId>
    <packaging>pom</packaging>
    <version>1.0-SNAPSHOT</version>
    <name>Messaging Maven Webapp</name>
    <url>http://maven.apache.org</url>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.8.RELEASE</version>
    </parent>
    <modules>
        <module>ApiComponent</module>
        <module>ServiceAComponent</module>
        <module>ServiceBComponent</module>
    </modules>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
        <finalName>Messaging-parent</finalName>
    </build>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-core</artifactId>
            <version>3.2.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-rt-frontend-jaxws</artifactId>
            <version>3.2.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-rt-transports-http</artifactId>
            <version>3.2.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-rt-transports-http-jetty</artifactId>
            <version>3.2.1</version>
        </dependency>

        <dependency>
            <groupId>org.apache.camel</groupId>
            <artifactId>camel-core</artifactId>
            <version>2.20.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.camel</groupId>
            <artifactId>camel-cxf</artifactId>
            <version>2.20.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.camel</groupId>
            <artifactId>camel-cxf-transport</artifactId>
            <version>2.20.1</version>
        </dependency>

        <dependency>
            <groupId>org.apache.activemq</groupId>
            <artifactId>activemq-camel</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.activemq</groupId>
            <artifactId>activemq-spring</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.activemq</groupId>
            <artifactId>activemq-broker</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.activemq</groupId>
            <artifactId>activemq-kahadb-store</artifactId>
        </dependency>
    </dependencies>
</project>

However, when I try to run the Spring boot application, I get the following error

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

2017-11-28 15:08:06.298  INFO 3080 --- [           main] tutoivon.api.configuration.Application   : Starting Application v1.0-SNAPSHOT on IT-L-R90HKRNH with PID 3080 (C:\Users\tutoivon\Desktop\Messaging\ApiComponent\target\ApiComponent.jar started by tutoivon in C:\Users\tutoivon\Desktop\Messaging\ApiComponent\target)
2017-11-28 15:08:06.324  INFO 3080 --- [           main] tutoivon.api.configuration.Application   : No active profile set, falling back to default profiles: default
2017-11-28 15:08:06.778  INFO 3080 --- [           main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@14514713: startup date [Tue Nov 28 15:08:06 EET 2017]; root of context hierarchy
2017-11-28 15:08:10.830  INFO 3080 --- [           main] o.s.b.f.xml.XmlBeanDefinitionReader      : Loading XML bean definitions from class path resource [camel-config.xml]
2017-11-28 15:08:11.857  INFO 3080 --- [           main] o.s.b.f.xml.XmlBeanDefinitionReader      : Loading XML bean definitions from class path resource [META-INF/cxf/cxf.xml]
2017-11-28 15:08:11.936  INFO 3080 --- [           main] o.s.b.f.xml.XmlBeanDefinitionReader      : Loading XML bean definitions from class path resource [META-INF/cxf/cxf-servlet.xml]
2017-11-28 15:08:12.692  INFO 3080 --- [           main] o.s.b.f.s.DefaultListableBeanFactory     : Overriding bean definition for bean 'endpoint' with a different definition: replacing [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=webServiceContext; factoryMethodName=endpoint; initMethodName=null; destroyMethodName=(inferred); defined in class path resource [tutoivon/api/configuration/WebServiceContext.class]] with [Generic bean: class [org.apache.camel.component.cxf.CxfSpringEndpoint]; scope=prototype; abstract=false; lazyInit=false; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null]
2017-11-28 15:08:26.979  INFO 3080 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 9090 (http)
2017-11-28 15:08:27.065  INFO 3080 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2017-11-28 15:08:27.084  INFO 3080 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet Engine: Apache Tomcat/8.5.23
2017-11-28 15:08:27.741  INFO 3080 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/api]    : Initializing Spring embedded WebApplicationContext
2017-11-28 15:08:27.742  INFO 3080 --- [ost-startStop-1] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 20971 ms
2017-11-28 15:08:28.469  INFO 3080 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean  : Mapping servlet: 'dispatcherServlet' to [/]
2017-11-28 15:08:28.500  INFO 3080 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'characterEncodingFilter' to: [/*]
2017-11-28 15:08:28.501  INFO 3080 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2017-11-28 15:08:28.502  INFO 3080 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2017-11-28 15:08:28.502  INFO 3080 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'requestContextFilter' to: [/*]
2017-11-28 15:08:33.539  INFO 3080 --- [           main] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@14514713: startup date [Tue Nov 28 15:08:06 EET 2017]; root of context hierarchy
2017-11-28 15:08:34.301  INFO 3080 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String, java.lang.Object>> org.springframework.boot.autoconfigure.web.BasicErrorController.error(javax.servlet.http.HttpServletRequest)
2017-11-28 15:08:34.308  INFO 3080 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error],produces=[text/html]}" onto public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2017-11-28 15:08:34.504  INFO 3080 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2017-11-28 15:08:34.505  INFO 3080 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2017-11-28 15:08:34.742  INFO 3080 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2017-11-28 15:08:36.704  INFO 3080 --- [           main] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup
2017-11-28 15:08:36.774  INFO 3080 --- [           main] o.s.c.support.DefaultLifecycleProcessor  : Starting beans in phase 2147483647
2017-11-28 15:08:36.957  INFO 3080 --- [           main] o.a.camel.spring.SpringCamelContext      : Apache Camel 2.20.1 (CamelContext: camelContext) is starting
2017-11-28 15:08:36.978  INFO 3080 --- [           main] o.a.c.m.ManagedManagementStrategy        : JMX is enabled
2017-11-28 15:08:38.869  INFO 3080 --- [           main] o.a.c.i.converter.DefaultTypeConverter   : Type converters loaded (core: 192, classpath: 25)
2017-11-28 15:08:40.054  INFO 3080 --- [           main] o.a.camel.spring.SpringCamelContext      : StreamCaching is not in use. If using streams then its recommended to enable stream caching. See more details at http://camel.apache.org/stream-caching.html
2017-11-28 15:08:42.819  INFO 3080 --- [           main] o.a.c.w.s.f.ReflectionServiceFactoryBean : Creating Service {http://www.webserviceX.NET}GlobalWeather from WSDL: META-INF/globalweather.wsdl
2017-11-28 15:08:44.396  WARN 3080 --- [           main] o.a.c.f.AbstractWSDLBasedEndpointFactory : Could not find endpoint/port for {http://www.webserviceX.NET}GlobalWeatherSoapPort in wsdl. Using {http://www.webserviceX.NET}GlobalWeatherSoap.
2017-11-28 15:08:44.737  INFO 3080 --- [           main] org.apache.cxf.endpoint.ServerImpl       : Setting the server's publish address to be http://localhost:1010/hello
2017-11-28 15:08:45.305  INFO 3080 --- [           main] org.eclipse.jetty.util.log               : Logging initialized @45588ms to org.eclipse.jetty.util.log.Slf4jLog
2017-11-28 15:08:45.673  INFO 3080 --- [           main] o.a.camel.spring.SpringCamelContext      : Apache Camel 2.20.1 (CamelContext: camelContext) is shutting down
2017-11-28 15:08:45.729  INFO 3080 --- [           main] o.a.camel.spring.SpringCamelContext      : Apache Camel 2.20.1 (CamelContext: camelContext) uptime 8.776 seconds
2017-11-28 15:08:45.730  INFO 3080 --- [           main] o.a.camel.spring.SpringCamelContext      : Apache Camel 2.20.1 (CamelContext: camelContext) is shutdown in 0.056 seconds
2017-11-28 15:08:45.746  INFO 3080 --- [           main] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
2017-11-28 15:08:45.824  INFO 3080 --- [           main] utoConfigurationReportLoggingInitializer :

Error starting ApplicationContext. To display the auto-configuration report re-run your application with 'debug' enabled.
2017-11-28 15:08:45.882 ERROR 3080 --- [           main] o.s.boot.SpringApplication               : Application startup failed

org.apache.camel.RuntimeCamelException: java.lang.IllegalStateException: Locker is not reentrant
        at org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1831) ~[camel-core-2.20.1.jar!/:2.20.1]
        at org.apache.camel.spring.SpringCamelContext.start(SpringCamelContext.java:136) ~[camel-spring-2.20.1.jar!/:2.20.1]
        at org.apache.camel.spring.CamelContextFactoryBean.start(CamelContextFactoryBean.java:369) ~[camel-spring-2.20.1.jar!/:2.20.1]
        at org.apache.camel.spring.CamelContextFactoryBean.onApplicationEvent(CamelContextFactoryBean.java:416) ~[camel-spring-2.20.1.jar!/:2.20.1]
        at org.apache.camel.spring.CamelContextFactoryBean.onApplicationEvent(CamelContextFactoryBean.java:94) ~[camel-spring-2.20.1.jar!/:2.20.1]
        at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172) ~[spring-context-4.3.12.RELEASE.jar!/:4.3.12.RELEASE]
        at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165) ~[spring-context-4.3.12.RELEASE.jar!/:4.3.12.RELEASE]
        at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139) ~[spring-context-4.3.12.RELEASE.jar!/:4.3.12.RELEASE]
        at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:393) ~[spring-context-4.3.12.RELEASE.jar!/:4.3.12.RELEASE]
        at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:347) ~[spring-context-4.3.12.RELEASE.jar!/:4.3.12.RELEASE]
        at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:883) ~[spring-context-4.3.12.RELEASE.jar!/:4.3.12.RELEASE]
        at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.finishRefresh(EmbeddedWebApplicationContext.java:144) ~[spring-boot-1.5.8.RELEASE.jar!/:1.5.8.RELEASE]
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:546) ~[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 tutoivon.api.configuration.Application.main(Application.java:20) [classes!/:1.0-SNAPSHOT]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_92]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_92]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_92]
        at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_92]
        at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48) [ApiComponent.jar:1.0-SNAPSHOT]
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:87) [ApiComponent.jar:1.0-SNAPSHOT]
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:50) [ApiComponent.jar:1.0-SNAPSHOT]
        at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51) [ApiComponent.jar:1.0-SNAPSHOT]
Caused by: java.lang.IllegalStateException: Locker is not reentrant
        at org.eclipse.jetty.util.thread.Locker.lock(Locker.java:47) ~[jetty-util-9.4.7.v20170914.jar!/:9.4.7.v20170914]
        at org.eclipse.jetty.server.AbstractConnector.removeConnectionFactory(AbstractConnector.java:465) ~[jetty-server-9.4.7.v20170914.jar!/:9.4.7.v20170914]
        at org.eclipse.jetty.server.AbstractConnector.setConnectionFactories(AbstractConnector.java:488) ~[jetty-server-9.4.7.v20170914.jar!/:9.4.7.v20170914]
        at org.apache.cxf.transport.http_jetty.JettyHTTPServerEngine.createConnectorJetty(JettyHTTPServerEngine.java:653) ~[cxf-rt-transports-http-jetty-3.2.1.jar!/:3.2.1]
        at org.apache.cxf.transport.http_jetty.JettyHTTPServerEngine.createConnector(JettyHTTPServerEngine.java:616) ~[cxf-rt-transports-http-jetty-3.2.1.jar!/:3.2.1]
        at org.apache.cxf.transport.http_jetty.JettyHTTPServerEngine.addServant(JettyHTTPServerEngine.java:398) ~[cxf-rt-transports-http-jetty-3.2.1.jar!/:3.2.1]
        at org.apache.cxf.transport.http_jetty.JettyHTTPDestination.activate(JettyHTTPDestination.java:187) ~[cxf-rt-transports-http-jetty-3.2.1.jar!/:3.2.1]
        at org.apache.cxf.transport.AbstractObservable.setMessageObserver(AbstractObservable.java:53) ~[cxf-core-3.2.1.jar!/:3.2.1]
        at org.apache.cxf.binding.AbstractBindingFactory.addListener(AbstractBindingFactory.java:95) ~[cxf-core-3.2.1.jar!/:3.2.1]
        at org.apache.cxf.binding.soap.SoapBindingFactory.addListener(SoapBindingFactory.java:893) ~[cxf-rt-bindings-soap-3.2.1.jar!/:3.2.1]
        at org.apache.cxf.endpoint.ServerImpl.start(ServerImpl.java:123) ~[cxf-core-3.2.1.jar!/:3.2.1]
        at org.apache.camel.component.cxf.CxfConsumer.doStart(CxfConsumer.java:129) ~[camel-cxf-2.20.1.jar!/:2.20.1]
        at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61) ~[camel-core-2.20.1.jar!/:2.20.1]
        at org.apache.camel.impl.DefaultCamelContext.startService(DefaultCamelContext.java:3701) ~[camel-core-2.20.1.jar!/:2.20.1]
        at org.apache.camel.impl.DefaultCamelContext.doStartOrResumeRouteConsumers(DefaultCamelContext.java:4019) ~[camel-core-2.20.1.jar!/:2.20.1]
        at org.apache.camel.impl.DefaultCamelContext.doStartRouteConsumers(DefaultCamelContext.java:3954) ~[camel-core-2.20.1.jar!/:2.20.1]
        at org.apache.camel.impl.DefaultCamelContext.safelyStartRouteServices(DefaultCamelContext.java:3874) ~[camel-core-2.20.1.jar!/:2.20.1]
        at org.apache.camel.impl.DefaultCamelContext.doStartOrResumeRoutes(DefaultCamelContext.java:3638) ~[camel-core-2.20.1.jar!/:2.20.1]
        at org.apache.camel.impl.DefaultCamelContext.doStartCamel(DefaultCamelContext.java:3490) ~[camel-core-2.20.1.jar!/:2.20.1]
        at org.apache.camel.impl.DefaultCamelContext.access$000(DefaultCamelContext.java:208) ~[camel-core-2.20.1.jar!/:2.20.1]
        at org.apache.camel.impl.DefaultCamelContext$2.call(DefaultCamelContext.java:3249) ~[camel-core-2.20.1.jar!/:2.20.1]
        at org.apache.camel.impl.DefaultCamelContext$2.call(DefaultCamelContext.java:3245) ~[camel-core-2.20.1.jar!/:2.20.1]
        at org.apache.camel.impl.DefaultCamelContext.doWithDefinedClassLoader(DefaultCamelContext.java:3268) ~[camel-core-2.20.1.jar!/:2.20.1]
        at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:3245) ~[camel-core-2.20.1.jar!/:2.20.1]
        at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61) ~[camel-core-2.20.1.jar!/:2.20.1]
        at org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:3168) ~[camel-core-2.20.1.jar!/:2.20.1]
        at org.apache.camel.spring.SpringCamelContext.start(SpringCamelContext.java:133) ~[camel-spring-2.20.1.jar!/:2.20.1]
        ... 26 common frames omitted

2017-11-28 15:08:45.895  INFO 3080 --- [           main] ationConfigEmbeddedWebApplicationContext : Closing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@14514713: startup date [Tue Nov 28 15:08:06 EET 2017]; root of context hierarchy
java.lang.NullPointerException
        at org.apache.cxf.transport.http_jetty.JettyHTTPServerEngine.stop(JettyHTTPServerEngine.java:1005)
        at org.apache.cxf.transport.http_jetty.JettyHTTPServerEngineFactory.destroyForPort(JettyHTTPServerEngineFactory.java:318)
        at org.apache.cxf.transport.http_jetty.JettyHTTPServerEngine.shutdown(JettyHTTPServerEngine.java:209)
        at org.apache.cxf.transport.http_jetty.JettyHTTPServerEngineFactory.postShutdown(JettyHTTPServerEngineFactory.java:372)
        at org.apache.cxf.transport.http_jetty.JettyHTTPServerEngineFactory$JettyBusLifeCycleListener.postShutdown(JettyHTTPServerEngineFactory.java:155)
        at org.apache.cxf.bus.managers.CXFBusLifeCycleManager.postShutdown(CXFBusLifeCycleManager.java:110)
        at org.apache.cxf.bus.extension.ExtensionManagerBus.shutdown(ExtensionManagerBus.java:306)
        at org.apache.cxf.bus.extension.ExtensionManagerBus.shutdown(ExtensionManagerBus.java:282)
        at org.apache.cxf.bus.spring.SpringBus.onApplicationEvent(SpringBus.java:109)
        at org.apache.cxf.bus.spring.SpringBus$1.onApplicationEvent(SpringBus.java:58)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139)
        at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:393)
        at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:347)
        at org.springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:991)
        at org.springframework.context.support.AbstractApplicationContext.close(AbstractApplicationContext.java:958)
        at org.springframework.boot.SpringApplication.handleRunFailure(SpringApplication.java:750)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:314)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1118)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1107)
        at tutoivon.api.configuration.Application.main(Application.java:20)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)
        at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)
2017-11-28 15:08:45.921  INFO 3080 --- [           main] o.s.c.support.DefaultLifecycleProcessor  : Stopping beans in phase 2147483647
2017-11-28 15:08:45.921  INFO 3080 --- [           main] o.s.c.support.DefaultLifecycleProcessor  : Stopping beans in phase 2147483646
2017-11-28 15:08:45.922  INFO 3080 --- [           main] o.s.j.e.a.AnnotationMBeanExporter        : Unregistering JMX-exposed beans on shutdown

Upvotes: 2

Views: 1578

Answers (1)

Tuomas Toivonen
Tuomas Toivonen

Reputation: 23502

Apparently newest jetty version is incompatible with the stack. I'm not sure if it's problem with the spring boot, cxf or camel. Problem was solved by degrading the jetty version as follows.

    <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-transports-http-jetty</artifactId>
        <version>3.2.1</version>
        <exclusions>
            <exclusion>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-continuation</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-http</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-io</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-security</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-server</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-util</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

    <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-continuation</artifactId>
        <version>9.4.6.v20170531</version>
    </dependency>
    <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-http</artifactId>
        <version>9.4.6.v20170531</version>
    </dependency>
    <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-io</artifactId>
        <version>9.4.6.v20170531</version>
    </dependency>
    <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-security</artifactId>
        <version>9.4.6.v20170531</version>
    </dependency>
    <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-server</artifactId>
        <version>9.4.6.v20170531</version>
    </dependency>
    <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-util</artifactId>
        <version>9.4.6.v20170531</version>
    </dependency>

Upvotes: 2

Related Questions