Consultor Eletrônico



Kbase P104908: Error 9407 when running WebClient application with AIA, Tomcat with Apache and mod_jk
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   29/07/2008
Status: Unverified

SYMPTOM(s):

Error 9407 when running WebClient application with AIA, Tomcat with Apache and mod_jk

Connection failure for host <host_name> port <port> transport <transport_name>. (9407)

The same application works fine when using Tomcat standalone

Application works fine when using New Atlanta ServletExec

FACT(s) (Environment):

OpenEge 10.0X
Apache 2.x
Tomcat 5.x
All Supported Operating Systems

CAUSE:

Bug# OE00116332

CAUSE:

The AIA is sending an empty message and the servlet engine was sending the message with content-length = 0.

The client would end up getting part of the message, and it would be left on the receiving buffer. When it read the next message, the code was trying to read the HTTP header of the next message, but because of the left over of the previous malformed message had 0's in it, we would never find the end of the header of the current message, and it would cause the error described and session would hang, because we wrongly assumed there was more to be read, and there was not because we ended up consuming all the next messages without processing them.

FIX:

Upgrade to OpenEdge 10.1A or later.

The AIA code now checks if we receive a stop message from the client, and if not, it will first set the content length to 0 by calling setContentLength() and then build the empty message and reset the content length by calling setContentLength() again.