tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From André Warnier ...@ice-sa.com>
Subject Re: Problem forward HTTP / Soap request using mod_jk
Date Wed, 04 Nov 2009 14:50:01 GMT
See at bottom.

breako wrote:
> Thanks so much for getting back to me.
> 
> It's just a java process that is supposed to process requests from docy.
> This all works when it's just one tomcat as a client and one tomcat as a
> server with no apache http server infront of the server.
> 
> Here is part of the request I edited out... 
> 
> [Tue Nov 03 18:14:30 2009] [7724:3132] [debug] jk_ajp_common.c (931):
> Connected socket 4536 to (127.0.0.1:23009)
> [Tue Nov 03 18:14:30 2009] [7724:3132] [debug] jk_ajp_common.c (1070):
> sending to ajp13 pos=4 len=388 max=8192
> [Tue Nov 03 18:14:30 2009] [7724:3132] [debug] jk_ajp_common.c (1070): 0000   
> 12 34 01 80 02 04 00 08 48 54 54 50 2F 31 2E 31  - .4......HTTP/1.1
> [Tue Nov 03 18:14:30 2009] [7724:3132] [debug] jk_ajp_common.c (1070): 0010   
> 00 00 28 2F 66 69 6E 65 6F 73 2D 64 6F 63 70 72  - ..(/docy...19
...

> 45 6E 63 6F 64 69 6E 67 00 00 07 63 68 75 6E 6B  - Encoding...chunk
> [Tue Nov 03 18:14:30 2009] [7724:3132] [debug] jk_ajp_common.c (1070): 0180   
> 65 64 00 FF 00 00 00 00 00 00 00 00 00 00 00 00  - ed..............
> [Tue Nov 03 18:14:30 2009] [7724:3132] [debug] jk_ajp_common.c (1560):
> (worker2) request body to send 0 - request body to resend 0
> 
> 
> So this is where it ends, this request never makes to the tomcat server.
> 
Well, it probably does.  But to me, it looks like Tomcat does not know 
what to do with it.  Or else, I misinterpret what you are saying below, 
or there is a piece missing in your explanation.

> Note 1:
> The web context on the server isn't called docy.
> It's the doc_(The name of the project I am working on) which I have had to
> edit out. 
> 
> Note 2: 
> I have a simple Helloworld.jsp also running on the server which I can send
> notmal HTTP requests to via the apache server.
> 
> So I am 100% confident all the bog standard stuff is set up correctly.
> 
Well yes, it looks like indeed the Apache <-> mod_jk <-> Tomcat 
communication part is set up properly and is working.
But it would seem that the request you are sending to Apache is a POST 
request, to the URL "/docy" (or whatever).  Then mod_jk is trying to 
forward this request to Tomcat, using the same request URL "/docy".
However, I have a feeling that, although this request is a POST 
(supposed to contain a request body), and the HTTP headers seem to 
indicate that there should be a body, in fact it does not contain any 
request body.
Another thing is that for Tomcat to respond sensibly to a request for 
"/docy" (or whatever), should have an application at the Tomcat side 
that is set up to respond to "/docy" (or whatever) with something.

To tell you the truth, I am now lost, and I don't know if what you are 
testing through Apache, and for which you have been showing the logs, 
really represents what you are trying to achieve, or if maybe you are 
testing different things when going through Apache as opposed to when 
you are not.

Tell me some more things :
When you have your initial setup, where one Tomcat talks to the other 
directly,
- which port do you use on the "server" Tomcat ?
(can you show the corresponding <Connector> of your Tomcat server.xml file)
- how does the "client" Tomcat connect to that port and send a request 
to it ?
- is that request then pure HTTP ? (even if inside, there is a SOAP message)

- and later, when you have changed your setup to have the "client 
Tomcat" now talk to the Apache server, instead of to the "server Tomcat" 
directly, are you using the exact same request from the client Tomcat ?

Coming back on your Note 2 above : it would probably be useful to 
compare the mod_jk log between these two cases : when you are requesting 
the URL /HelloWorld and when you are requestion /docy (or whatever), and 
look where the difference is.

What may also be useful, is to configure this within your Tomcat :
http://tomcat.apache.org/tomcat-6.0-doc/config/valve.html
(AccessLogValve)
There is probably a commented-out example is your server.xml.  Uncomment 
it.  It will log the requests which Tomcat does receive, through 
whatever port.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Mime
View raw message