I've started to debug this a bit and there is definitely an issue with the http binding. I need to dig in a bit to figure out what it's trying to do and why.
HOWEVER, the question I have to ask is why are you using the HTTP binding? For the most part, it's completely deprecated and relatively unsupported in favor of the JAX-RS stuff. In your case, since it looks like you are just trying to POST XML, I would suggest the xml binding. Just change the lines: <import resource="classpath:META-INF/cxf/cxf-extension-binding-http.xml" /> to <import resource="classpath:META-INF/cxf/cxf-extension-xml.xml" /> and the bindingId things to: bindingId="http://cxf.apache.org/bindings/xformat" and everything seems to work fine. (once I fixed the serviceBean entry on the server element) Anyway, I'm looking into the http binding to try and fix it, but I would suggest moving away from it. Dan On Friday 18 June 2010 6:15:59 am Sean Patrick Floyd wrote: > I have now fixed a part of the problem myself by turning chunking off in > the http conduit. > But new problems arise. > > My new clientContext.xml: > > <?xml version="1.0" encoding="UTF-8"?> > <beans xmlns="http://www.springframework.org/schema/beans" > xmlns:simple="http://cxf.apache.org/simple" > xmlns:soap="http://cxf.apache.org/bindings/soap" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xmlns:context="http://www.springframework.org/schema/context" > xmlns:ds="http://www.mycompany.com/services/dummy" > xmlns:http-conf="http://cxf.apache.org/transports/http/configuration" > default-autowire="byType" > xsi:schemaLocation="http://www.mycompany.com/services/dummy > http://www.springframework.org/schema/oxm > http://www.springframework.org/schema/beans > http://www.springframework.org/schema/beans/spring-beans-3.0.xsd > http://cxf.apache.org/bindings/soap > http://cxf.apache.org/schemas/configuration/soap.xsd > http://cxf.apache.org/simple > http://cxf.apache.org/schemas/simple.xsd > http://www.springframework.org/schema/context > http://www.springframework.org/schema/context/spring-context-3.0.xsd > > http://cxf.apache.org/transports/http/configuration > > http://cxf.apache.org/schemas/configuration/http-conf.xsd > "> > > <import resource="classpath:META-INF/cxf/cxf.xml" /> > <import resource="classpath:META-INF/cxf/cxf-extension-http.xml" /> > <import > resource="classpath:META-INF/cxf/cxf-extension-http-binding.xml" /> > <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" /> > > > <http-conf:conduit name="*.http-conduit"> > <http-conf:client AllowChunking="false" /> > </http-conf:conduit> > > > <simple:client id="dummyService" > wsdlLocation="http://localhost:9999/services/dummy?wsdl" > serviceName="ds:dummyService" > endpointName="ds:dummyServicePort" > transportId="http://schemas.xmlsoap.org/soap/http" > address="http://localhost:9999/services/dummy" > bindingId="http://apache.org/cxf/binding/http" > serviceClass="com.mycompany.service.MyService"> > <simple:dataBinding> > <bean > class="org.apache.cxf.aegis.databinding.AegisDatabinding" /> > </simple:dataBinding> > <simple:binding> > <soap:soapBinding mtomEnabled="true" version="1.2" > /> > </simple:binding> > </simple:client> > > </beans> > > Now I get this exception: > > WARNUNG: Interceptor for > {http://www.mycompany.com/services/dummy}dummyService has thrown exception, > unwinding now > org.apache.cxf.interceptor.Fault: Invalid URL/Verb combination. Verb: POST > Path: > at > org.apache.cxf.binding.http.interceptor.DispatchInterceptor.handleMessage(D > i spatchInterceptor.java:74) > at > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChai > n .java:243) > at > org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationO > b server.java:110) > at > org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestinati > o n.java:98) > at > org.apache.cxf.transport.servlet.ServletController.invokeDestination(Servle > t Controller.java:423) > at > org.apache.cxf.transport.servlet.ServletController.invoke(ServletController > . java:178) > at > org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServl > e t.java:142) > at > org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(Abstract > H TTPServlet.java:179) > at > org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPSer > v let.java:103) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) > at > org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPSe > r vlet.java:159) > at > org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) > at > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:367) > at > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) > at > org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) > at > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712) > at > org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405) > at > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) > at org.mortbay.jetty.Server.handle(Server.java:295) > at > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:503) > at > org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnecti > o n.java:827) > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:511) > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:210) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:379) > at > org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:2 > 2 6) > at > org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java: > 4 42) > > Sean -- Daniel Kulp [email protected] http://dankulp.com/blog
