I looked at the requests with wireshark, it seems that the soapActionheader is missing inthe request that is made to the service by the http-provider-su. Can i configure the httpbc to put that header in the post request? I'll post the xbean.xml later,when im back from work.
thanks ,Johannes -------- Original-Nachricht -------- > Datum: Tue, 08 Apr 2008 08:42:12 +0200 > Von: Gert Vanthienen <[EMAIL PROTECTED]> > An: [email protected] > Betreff: Re: simple http soap gateway > Johannes, > > Not sure what's wrong here. The exception looks like you're sending an > HTML document instead of a SOAP Envelope to the /arcgis/services > service. Could you post the contents of the xbean.xml file? You can > also try using CXF-BC instead, which is a dedicated HTTP/SOAP and > JMS/SOAP binding component. Have a look at > http://servicemix.apache.org/servicemix-cxf-bc.html for more information > on this. > > Gert > > Johannes Elsinghorst wrote: > > Hello, > > > > i want to configure servicemix as a simple gateway for a soap WS. > > I got it working in so far, that i can receive the wsdl of that > > proxied service. > > But when i invoke an operation on it (via soapui) it gives me this > error: > > <html> > > <head> > > <meta http-equiv="Content-Type" content="text/html; > > charset=ISO-8859-1"/> > > <title>Error 500</title> > > </head> > > <body> > > <h2>HTTP ERROR: 500</h2> > > <pre>org.apache.servicemix.soap.SoapFault: Unrecognized element: > > html at [1,1]. Expecting 'Envelope'.</pre> > > <p>RequestURI=/arcgis/services/</p> > > <h3>Caused by:</h3> > > <pre>java.lang.Exception: org.apache.servicemix.soap.SoapFault: > > Unrecognized element: html at [1,1]. Expecting 'Envelope'. > > at > > > org.apache.servicemix.http.processors.ConsumerProcessor.process(ConsumerProcessor.java:194) > > > > > at > > > org.apache.servicemix.http.HttpBridgeServlet.doPost(HttpBridgeServlet.java:71) > > > > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) > > at > > org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) > > at > > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362) > > at > > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712) > > at > > > org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:211) > > > > > at > > > org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) > > > > > at > > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) > > at org.mortbay.jetty.Server.handle(Server.java:313) > > at > > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506) > > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:375) > > at > > > org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396) > > > > at > > > org.mortbay.jetty.nio.SelectChannelConnector$RetryContinuation.run(SelectChannelConnector.java:511) > > > > > at > > > org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442) > > > > > Caused by: org.apache.servicemix.soap.SoapFault: Unrecognized element: > > html at [1,1]. Expecting 'Envelope'. > > at > > > org.apache.servicemix.soap.marshalers.SoapReader.readSoapUsingStax(SoapReader.java:167) > > > > > at > > > org.apache.servicemix.soap.marshalers.SoapReader.read(SoapReader.java:89) > > at > > > org.apache.servicemix.soap.marshalers.SoapReader.read(SoapReader.java:76) > > at > > > org.apache.servicemix.http.processors.ProviderProcessor.process(ProviderProcessor.java:164) > > > > > at > > > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:538) > > > > > at > > > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:490) > > > > > at > > > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46) > > > > > at > > > org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:610) > > > > > at > > > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:170) > > > > > at > > > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:167) > > > > at > > > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134) > > > > at > > > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885) > > > > > at > > > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) > > > > > at java.lang.Thread.run(Thread.java:619)</pre> > > <h3>Caused by:</h3> > > <pre>org.apache.servicemix.soap.SoapFault: Unrecognized element: > > html at [1,1]. Expecting 'Envelope'. > > at > > > org.apache.servicemix.soap.marshalers.SoapReader.readSoapUsingStax(SoapReader.java:167) > > > > > at > > > org.apache.servicemix.soap.marshalers.SoapReader.read(SoapReader.java:89) > > at > > > org.apache.servicemix.soap.marshalers.SoapReader.read(SoapReader.java:76) > > at > > > org.apache.servicemix.http.processors.ProviderProcessor.process(ProviderProcessor.java:164) > > > > > at > > > org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:538) > > > > > at > > > org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:490) > > > > > at > > > org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46) > > > > > at > > > org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:610) > > > > > at > > > org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:170) > > > > > at > > > org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:167) > > > > at > > > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134) > > > > at > > > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885) > > > > > at > > > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) > > > > > at java.lang.Thread.run(Thread.java:619)</pre> > > <p> > > <i> > > <small> > > <a href="http://jetty.mortbay.org/">Powered by > Jetty://</a> > > </small> > > </i> > > </p> > > > > </body> > > </html> > > > > When i configure the endpoint without soap="true" i get this error: > > > > <html> > > <head> > > <meta http-equiv="Content-Type" content="text/html; > > charset=ISO-8859-1"/> > > <title>Error 500</title> > > </head> > > <body> > > <h2>HTTP ERROR: 500</h2> > > <pre>Attempted read on closed stream.</pre> > > <p>RequestURI=/arcgis/services/</p> > > <h3>Caused by:</h3> > > <pre>com.ctc.wstx.exc.WstxIOException: Attempted read on closed > > stream. > > at > > com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:548) > > at > > com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:604) > > at > > com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:660) > > at > > > com.ctc.wstx.stax.WstxInputFactory.createXMLStreamReader(WstxInputFactory.java:331) > > > > > at > > > org.apache.servicemix.jbi.jaxp.StAXSourceTransformer.toXMLStreamReader(StAXSourceTransformer.java:86) > > > > > at > > > org.apache.servicemix.soap.marshalers.SoapWriter.writeSimpleMessage(SoapWriter.java:120) > > > > > at > > > org.apache.servicemix.soap.marshalers.SoapWriter.write(SoapWriter.java:92) > > > > at > > > org.apache.servicemix.http.processors.ConsumerProcessor.sendFault(ConsumerProcessor.java:277) > > > > > at > > > org.apache.servicemix.http.processors.ConsumerProcessor.processFault(ConsumerProcessor.java:234) > > > > > at > > > org.apache.servicemix.http.processors.ConsumerProcessor.process(ConsumerProcessor.java:201) > > > > > at > > > org.apache.servicemix.http.HttpBridgeServlet.doPost(HttpBridgeServlet.java:71) > > > > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) > > at > > org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) > > at > > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362) > > at > > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712) > > at > > > org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:211) > > > > > at > > > org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) > > > > > at > > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) > > at org.mortbay.jetty.Server.handle(Server.java:313) > > at > > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506) > > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:375) > > at > > > org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396) > > > > at > > > org.mortbay.jetty.nio.SelectChannelConnector$RetryContinuation.run(SelectChannelConnector.java:511) > > > > > at > > > org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442) > > > > > Caused by: java.io.IOException: Attempted read on closed stream. > > at > > > org.apache.commons.httpclient.AutoCloseInputStream.isReadAllowed(AutoCloseInputStream.java:165) > > > > > at > > > org.apache.commons.httpclient.AutoCloseInputStream.read(AutoCloseInputStream.java:106) > > > > > at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:264) > > at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:306) > > at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:158) > > at java.io.InputStreamReader.read(InputStreamReader.java:167) > > at > > > com.ctc.wstx.io.ReaderBootstrapper.initialLoad(ReaderBootstrapper.java:245) > > > > at > > > com.ctc.wstx.io.ReaderBootstrapper.bootstrapInput(ReaderBootstrapper.java:132) > > > > > at > > com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:543) > > ... 24 more</pre> > > <h3>Caused by:</h3> > > <pre>java.io.IOException: Attempted read on closed stream. > > at > > > org.apache.commons.httpclient.AutoCloseInputStream.isReadAllowed(AutoCloseInputStream.java:165) > > > > > at > > > org.apache.commons.httpclient.AutoCloseInputStream.read(AutoCloseInputStream.java:106) > > > > > at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:264) > > at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:306) > > at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:158) > > at java.io.InputStreamReader.read(InputStreamReader.java:167) > > at > > > com.ctc.wstx.io.ReaderBootstrapper.initialLoad(ReaderBootstrapper.java:245) > > > > at > > > com.ctc.wstx.io.ReaderBootstrapper.bootstrapInput(ReaderBootstrapper.java:132) > > > > > at > > com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:543) > > at > > com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:604) > > at > > com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:660) > > at > > > com.ctc.wstx.stax.WstxInputFactory.createXMLStreamReader(WstxInputFactory.java:331) > > > > > at > > > org.apache.servicemix.jbi.jaxp.StAXSourceTransformer.toXMLStreamReader(StAXSourceTransformer.java:86) > > > > > at > > > org.apache.servicemix.soap.marshalers.SoapWriter.writeSimpleMessage(SoapWriter.java:120) > > > > > at > > > org.apache.servicemix.soap.marshalers.SoapWriter.write(SoapWriter.java:92) > > > > at > > > org.apache.servicemix.http.processors.ConsumerProcessor.sendFault(ConsumerProcessor.java:277) > > > > > at > > > org.apache.servicemix.http.processors.ConsumerProcessor.processFault(ConsumerProcessor.java:234) > > > > > at > > > org.apache.servicemix.http.processors.ConsumerProcessor.process(ConsumerProcessor.java:201) > > > > > at > > > org.apache.servicemix.http.HttpBridgeServlet.doPost(HttpBridgeServlet.java:71) > > > > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) > > at > > org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) > > at > > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362) > > at > > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712) > > at > > > org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:211) > > > > > at > > > org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) > > > > > at > > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) > > at org.mortbay.jetty.Server.handle(Server.java:313) > > at > > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506) > > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:375) > > at > > > org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396) > > > > at > > > org.mortbay.jetty.nio.SelectChannelConnector$RetryContinuation.run(SelectChannelConnector.java:511) > > > > > at > > > org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)</pre> > > > > > <p> > > <i> > > <small> > > <a href="http://jetty.mortbay.org/">Powered by > Jetty://</a> > > </small> > > </i> > > </p> </body> > > </html> > > > > Can anybody tell whats wrong here? > > > > thanks, Johannes > > -- GMX startet ShortView.de. Hier findest Du Leute mit Deinen Interessen! Jetzt dabei sein: http://www.shortview.de/[EMAIL PROTECTED]
