+1 (binding) Cheers, Jamie
On Thu, Mar 30, 2017 at 7:33 AM, Markus Rathgeb <maggu2...@gmail.com> wrote: > Has someone tested the Spring MVC feature / bundles? > > I have a bundle that is using the Spring MVC and worked before. > In K4.1.1 staging I receive an error while bundle start > > === > 2017-03-30 11:37:56,973 | ERROR | ender-1-thread-1 | DispatcherServlet > | 132 - org.apache.servicemix.bundles.spring-webmvc - > 4.3.5.RELEASE_1 | Context initialization failed > org.springframework.beans.factory.BeanCreationException: Error > creating bean with name > 'org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter': > Instantiation of bean failed; nested exception is > org.springframework.beans.BeanInstantiationException: Failed to > instantiate > [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter]: > Constructor threw exception; nested exception is > java.lang.NoClassDefFoundError: > com/fasterxml/jackson/core/util/DefaultIndenter > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1116) > ~[125:org.apache.servicemix.bundles.spring-beans:4.3.5.RELEASE_1] > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1060) > ~[125:org.apache.servicemix.bundles.spring-beans:4.3.5.RELEASE_1] > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513) > ~[125:org.apache.servicemix.bundles.spring-beans:4.3.5.RELEASE_1] > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483) > ~[125:org.apache.servicemix.bundles.spring-beans:4.3.5.RELEASE_1] > at > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) > ~[125:org.apache.servicemix.bundles.spring-beans:4.3.5.RELEASE_1] > at > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) > ~[125:org.apache.servicemix.bundles.spring-beans:4.3.5.RELEASE_1] > at > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) > ~[125:org.apache.servicemix.bundles.spring-beans:4.3.5.RELEASE_1] > at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) > ~[125:org.apache.servicemix.bundles.spring-beans:4.3.5.RELEASE_1] > at > org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:759) > ~[125:org.apache.servicemix.bundles.spring-beans:4.3.5.RELEASE_1] > at > org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:866) > ~[126:org.apache.servicemix.bundles.spring-context:4.3.5.RELEASE_1] > at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:542) > ~[126:org.apache.servicemix.bundles.spring-context:4.3.5.RELEASE_1] > at > org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:668) > ~[132:org.apache.servicemix.bundles.spring-webmvc:4.3.5.RELEASE_1] > at > org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:634) > ~[132:org.apache.servicemix.bundles.spring-webmvc:4.3.5.RELEASE_1] > at > org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:682) > ~[132:org.apache.servicemix.bundles.spring-webmvc:4.3.5.RELEASE_1] > at > org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:553) > ~[132:org.apache.servicemix.bundles.spring-webmvc:4.3.5.RELEASE_1] > at > org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:494) > ~[132:org.apache.servicemix.bundles.spring-webmvc:4.3.5.RELEASE_1] > at > org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:136) > ~[132:org.apache.servicemix.bundles.spring-webmvc:4.3.5.RELEASE_1] > at javax.servlet.GenericServlet.init(GenericServlet.java:244) > ~[52:javax.servlet-api:3.1.0] > at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:640) > ~[155:org.eclipse.jetty.servlet:9.3.14.v20161028] > at org.eclipse.jetty.servlet.ServletHolder.initialize(ServletHolder.java:419) > ~[155:org.eclipse.jetty.servlet:9.3.14.v20161028] > at > org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:892) > ~[155:org.eclipse.jetty.servlet:9.3.14.v20161028] > at > org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:349) > ~[155:org.eclipse.jetty.servlet:9.3.14.v20161028] > at > org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.startContext(HttpServiceContext.java:432) > ~[265:org.ops4j.pax.web.pax-web-jetty:6.0.3] > at > org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:778) > ~[154:org.eclipse.jetty.server:9.3.14.v20161028] > at > org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:262) > ~[155:org.eclipse.jetty.servlet:9.3.14.v20161028] > at > org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doStart(HttpServiceContext.java:258) > ~[265:org.ops4j.pax.web.pax-web-jetty:6.0.3] > at > org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) > ~[157:org.eclipse.jetty.util:9.3.14.v20161028] > at > org.ops4j.pax.web.service.jetty.internal.JettyServerImpl$1.start(JettyServerImpl.java:285) > ~[265:org.ops4j.pax.web.pax-web-jetty:6.0.3] > at > org.ops4j.pax.web.service.internal.HttpServiceStarted.end(HttpServiceStarted.java:1137) > ~[?:?] > at > org.ops4j.pax.web.service.internal.HttpServiceProxy.end(HttpServiceProxy.java:444) > ~[?:?] > at > org.ops4j.pax.web.extender.war.internal.RegisterWebAppVisitorWC.end(RegisterWebAppVisitorWC.java:398) > ~[?:?] > at > org.ops4j.pax.web.extender.war.internal.model.WebApp.accept(WebApp.java:656) > ~[?:?] > at > org.ops4j.pax.web.extender.war.internal.WebAppPublisher$WebAppDependencyListener.register(WebAppPublisher.java:228) > ~[?:?] > at > org.ops4j.pax.web.extender.war.internal.WebAppPublisher$WebAppDependencyListener.addingService(WebAppPublisher.java:173) > ~[?:?] > at > org.ops4j.pax.web.extender.war.internal.WebAppPublisher$WebAppDependencyListener.addingService(WebAppPublisher.java:129) > ~[?:?] > at > org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:941) > ~[?:?] > at > org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:870) > ~[?:?] > at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256) > ~[?:?] > at > org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:183) > ~[?:?] > at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:318) ~[?:?] > at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:261) ~[?:?] > at > org.ops4j.pax.web.extender.war.internal.WebAppPublisher.publish(WebAppPublisher.java:98) > ~[?:?] > at > org.ops4j.pax.web.extender.war.internal.WebObserver.deploy(WebObserver.java:217) > ~[?:?] > at > org.ops4j.pax.web.extender.war.internal.WebObserver$1.doStart(WebObserver.java:172) > ~[?:?] > at > org.ops4j.pax.web.extender.war.internal.extender.SimpleExtension.start(SimpleExtension.java:59) > ~[?:?] > at > org.ops4j.pax.web.extender.war.internal.extender.AbstractExtender.lambda$createExtension$0(AbstractExtender.java:277) > ~[?:?] > at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > [?:?] > at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) > [?:?] > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) > [?:?] > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > [?:?] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > [?:?] > at java.lang.Thread.run(Thread.java:745) [?:?] > Caused by: org.springframework.beans.BeanInstantiationException: > Failed to instantiate > [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter]: > Constructor threw exception; nested exception is > java.lang.NoClassDefFoundError: > com/fasterxml/jackson/core/util/DefaultIndenter > at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:154) > ~[?:?] > at > org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:89) > ~[?:?] > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1108) > ~[?:?] > ... 52 more > Caused by: java.lang.NoClassDefFoundError: > com/fasterxml/jackson/core/util/DefaultIndenter > at > org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.init(AbstractJackson2HttpMessageConverter.java:97) > ~[?:?] > at > org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.<init>(AbstractJackson2HttpMessageConverter.java:90) > ~[?:?] > at > org.springframework.http.converter.json.MappingJackson2HttpMessageConverter.<init>(MappingJackson2HttpMessageConverter.java:66) > ~[?:?] > at > org.springframework.http.converter.json.MappingJackson2HttpMessageConverter.<init>(MappingJackson2HttpMessageConverter.java:57) > ~[?:?] > at > org.springframework.http.converter.support.AllEncompassingFormHttpMessageConverter.<init>(AllEncompassingFormHttpMessageConverter.java:61) > ~[?:?] > at > org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.<init>(RequestMappingHandlerAdapter.java:182) > ~[?:?] > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > ~[?:?] > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > ~[?:?] > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > ~[?:?] > at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[?:?] > at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:142) > ~[?:?] > at > org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:89) > ~[?:?] > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1108) > ~[?:?] > ... 52 more > Caused by: java.lang.ClassNotFoundException: > com.fasterxml.jackson.core.util.DefaultIndenter not found by > com.fasterxml.jackson.core.jackson-core [34] > at > org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1550) > ~[?:?] > at > org.apache.felix.framework.BundleWiringImpl.access$200(BundleWiringImpl.java:79) > ~[?:?] > at > org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1958) > ~[?:?] > at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:?] > at > org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1391) > ~[?:?] > at > org.apache.felix.framework.BundleWiringImpl.searchImports(BundleWiringImpl.java:1571) > ~[?:?] > at > org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1501) > ~[?:?] > at > org.apache.felix.framework.BundleWiringImpl.access$200(BundleWiringImpl.java:79) > ~[?:?] > at > org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1958) > ~[?:?] > at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:?] > at > org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.init(AbstractJackson2HttpMessageConverter.java:97) > ~[?:?] > at > org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.<init>(AbstractJackson2HttpMessageConverter.java:90) > ~[?:?] > at > org.springframework.http.converter.json.MappingJackson2HttpMessageConverter.<init>(MappingJackson2HttpMessageConverter.java:66) > ~[?:?] > at > org.springframework.http.converter.json.MappingJackson2HttpMessageConverter.<init>(MappingJackson2HttpMessageConverter.java:57) > ~[?:?] > at > org.springframework.http.converter.support.AllEncompassingFormHttpMessageConverter.<init>(AllEncompassingFormHttpMessageConverter.java:61) > ~[?:?] > at > org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.<init>(RequestMappingHandlerAdapter.java:182) > ~[?:?] > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > ~[?:?] > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > ~[?:?] > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > ~[?:?] > at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[?:?] > at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:142) > ~[?:?] > at > org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:89) > ~[?:?] > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1108) > ~[?:?] > ... 52 more > ===