Hi,

I've a HTTP non-SOAP endpoint deployed on servicemix-http:

        <http:endpoint service="bes:request-audit"
                                         endpoint="request-audit"
                       role="consumer"
                       locationURI="http://localhost:9668/midas/";
                       defaultMep="http://www.w3.org/2004/08/wsdl/in-out";
                 soap="false" />


it is there in LISTEN mode:

# netstat -an |grep 9668
tcp        0      0 ::1:9668                :::*                    LISTEN

and one can telnet to it and when one tries to use a browser it says no POST
supported. What I want to say is it is there and tries to be nice except when
one tries to talk to it using the HttpClient

./examples/http-binding/HttpClient.java

or a own HttpClient based on commons-http-2.0.2 or 3.0.

---
POST /midas HTTP/1.1
Content-type: text/xml; charset=UTF-8
User-Agent: Jakarta Commons-HttpClient/2.0.2
Host: localhost

---
java.net.ConnectException: Connection refused
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
        at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
        at java.net.Socket.connect(Socket.java:507)
        at java.net.Socket.connect(Socket.java:457)
        at java.net.Socket.<init>(Socket.java:365)
        at java.net.Socket.<init>(Socket.java:178)
        at org.apache.axis.utils.tcpmon$Connection.run(tcpmon.java:1144)
---

When one sends such a POST request to some other HTTP server they accept the
connection and of course do nothing usefull with it but they accept it.
Whereas the HTTP endpoint does not want to talk to the HttpClient in any way.
I've tried HTTP 1.0, and various ways and found out that if one uses manual
telnet and modifies the "Host" header field to contain the port like this

Host: localhost:9668

It suddently returns an HTTP response!

So what was done to the HTTP endpoint that it does not accept connections with
the standard header that even the test HttpClient.java creates?
BTW, no log output whatsoever from the server (servicemix side).


Thanks, Peter

Reply via email to