調査(id:ferreco:20040511)その後
aihatenaさんがツッコミを入れてくれた。WebLogicサポートのI塚さんからも返信が来ている。どちらもほとんど同じ内容だ。
要するにこういうことだ。
メッセージには、Content-Length ヘッダフィールドと identity でない転送コーディングの両方を含んではならない。 メッセージが、identity でない転送コーディングを含んでいたら、Content-Length は無視されなければならない。
でも、こうも書いてある。
理解できない transfer-coding を含むエンティティボディを受信したサーバは、501 (Unimplemented) を返して接続を閉じるべきである。 サーバは、HTTP/1.0 クライアントに転送エンコーディングを送ってはならない。
クライアントは Netscape4.6 、もちろん HTTP/1.0 だ。チャンク形式は理解できないはず。RFCを守ってる限り、このクライアントに転送エンコーディングを送ってくることは無いはず。
ところで、リクエストをのぞいてみると Accept-Encoding: gzip になってる。これを受けて WebLogic が勝手に gzip 形式で転送エンコーディングを行うなんてことはありうるだろうか。しかも、そもそも Accept-Encoding: gzip は内容コーディングの話のような気もする。
ソース全部 grep してみたけど、レスポンスバッファの flush なんかも当然やってない。
電話でせっつかれるも、結局今日も結論出ず。