Hi Bertram
First of all, you need to subscribe to this mailing list (see
http://synapse.apache.org/mail-lists.html) to receive our replies to
your queries.. for now, I have explicitly copied this response to you..
When I invoke a request on that service, it forwards that request
(unmodified), but the receiving server runs into an error
What exactly is the error? and whats the receiving system - is it .Net ?
Can it understand HTTP 1.1 (chunked encoding) or is it HTTP 1.0 only ?
Wireshark gave me a hint on this:
POST http://ws001/soap/v1/WS_Customer_Control HTTP/1.1
Host: localhost:8280
SOAPAction: ""
Accept: application/soap+xml, application/dime, multipart/related, text/*
Pragma: no-cache
Cache-Control: no-cache
Content-Type: text/xml; charset=utf-8
Transfer-Encoding: chunked
Connection: Keep-Alive
User-Agent: Synapse-HttpComponents-NIO
<?xml version='1.0' encoding='utf-8'?><soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">..[original
content]..]</soapenv:Envelope>
I spot an error here.. the "Host: localhost:8280" is wrong.. is the host
"ws001" the same machine?.. anyway the port 8280 is wrong, .. I will
check if something went wrong in the code for the 1.2 release..
The target host (ws001) is running an apache server, which forwards the
request to a Tomcat (4.1.36) instance, and this server seems to have this
problem:
No Context configured to process this request</u></p><p><b>description</b>
<u>The server encountered an internal error (No Context configured to
process this request) that prevented it from fulfilling this request.
It seems to have problems with the fully qualified url in the POST request
(overriding the dubious host header, via <property scope="transport"
name="Host" value="ws001"> changes nothing). After patching
Axis2HttpRequestHeader class in a way that a "POST
/soap/v1/WS_Customer_Control HTTP/1.1" is sent, everything works just
fine.
Is there any hidden setting which I overlooked that forces synapse to use
the absolute path instead of the fully qualified url in this post
requests?
No.. there is no hidden setting, but we can make one available for you..
if you can request for this enhancement in our JIRA here ->
http://issues.apache.org/jira/browse/SYNAPSE
The "POST http://xxx HTTP/1.1" format is used when messages are sent
through proxies, and this should not have any adverse effects on your
Apache.. or is it the real backend service which complains? anyway let
me know the environment that does not understand this form, and I will
fix this issue ASAP
asankha
--
Asankha C. Perera
WSO2 - http://wso2.org
http://esbmagic.blogspot.com