stoicflame/enunciate — Issue #1: enunciate and Spring 3.xx support
Author: andrewmilkowski
Created: 2012-01-02 02:41:50+00:00
State: open

Hi Ryan

First thanks for this package (enunciate) .

However unfortunately I can't use it! a it is developed with Spring 2.5.4 and I have to use it with Spring 3.0.5.RELEASE.

I have tried to use 3.0.5.RELEASE but then there is a certain subtle bug
that if one accesses Soup service and then a Rest service, a following exception occurs within enunciate framework (stack trace below)

This defect is reproducible and I traced it to Spring libraries dependencies (switching to 2.5.4 completely) and doing maven overrides gets rid of the exception (but then of course if libraries are using Spring 3.x.x this will only work if methods coded are backwards compatible with Spring 2.5.4

Thanks and looking forward any suggestions (meantime I will be going with Apache WS for the time being)

org.springframework
spring-aspects
2.5.4

org.springframework
spring-context-support
2.5.4

org.springframework
spring-core
2.5.4

org.springframework
spring-beans
2.5.4

stack trace:

HTTP ERROR 500

Problem accessing /numbers-appfuse-services/api/numbers/results. Reason:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cxf-NumbersService': Invocation of init method failed; nested exception is javax.xml.ws.WebServiceException: java.lang.RuntimeException: Soap 1.1 endpoint already registered on address /services/NumbersService
Caused by:

java.lang.RuntimeException: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cxf-NumbersService': Invocation of init method failed; nested exception is javax.xml.ws.WebServiceException: java.lang.RuntimeException: Soap 1.1 endpoint already registered on address /services/NumbersService
at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:96)
at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:86)
at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:64)
at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:53)
at org.apache.cxf.transport.servlet.CXFServlet.updateContext(CXFServlet.java:142)
at org.apache.cxf.transport.servlet.CXFServlet.loadSpringBus(CXFServlet.java:104)
at org.apache.cxf.transport.servlet.CXFServlet.loadBus(CXFServlet.java:73)
at org.apache.cxf.transport.servlet.AbstractCXFServlet.init(AbstractCXFServlet.java:84)
at org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:440)
at org.mortbay.jetty.servlet.ServletHolder.getServlet(ServletHolder.java:339)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1221)
at org.codehaus.enunciate.modules.cxf.CXFAdaptedServletFilter.doFilter(CXFAdaptedServletFilter.java:32)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
at org.codehaus.enunciate.modules.cxf.CXFAdaptedServletFilter.doFilter(CXFAdaptedServletFilter.java:32)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
at org.codehaus.enunciate.modules.cxf.CXFAdaptedServletFilter.doFilter(CXFAdaptedServletFilter.java:32)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
at org.codehaus.enunciate.webapp.HTTPRequestContextFilter.doFilter(HTTPRequestContextFilter.java:36)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)
at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)