java.lang.IllegalStateExceptionが発生する原因:投稿サイズが大きくなるよう投稿するにはtomcat/mod_jkのサイズが大きすぎます


8

投稿のサイズを大きくするには、どの設定を調整する必要がありますか?

20

デフォルトでは、Apache Tomcatは、受け入れるHTTP POST要求の最大サイズに制限を設定します。 Tomcat 5では、この制限は2 MBに設定されています。 2 MBを超えるファイルをアップロードしようとすると、このエラーが発生することがあります。

解決策は、制限を増やすか、無効にすることによって、より大きなPOST要求を受け入れるようにTomcatを再構成することです。これは[TOMCAT_DIR] /conf/server.xmlを編集することで行うことができます。 HTTPConnectorのTomcat構成パラメーターmaxPostSizeをより大きな値(バイト単位)に設定して、制限を増やしてください。 0に設定すると、サイズチェックが無効になります。詳細については、Tomcat Configuration Referenceを参照してください。


4

Apache HTTPとTomcat(Tomcat/mod_jk)を結合しているのが分かります。この場合は、標準のコネクタと同じ方法でCoyote/JK2 AJP 1.3 Connectorを編集します(Coyote HTTP /1.1)、AJP1.3コネクタはTomcatがデータを受信する場所です。

<!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 --> 
<Connector port="8009" 
      enableLookups="false" redirectPort="8443" debug="0" 
      protocol="AJP/1.3" maxPostSize="0"/> 

0

IllegalStateException例外の根本原因は、応答がコミットされた後に出力ストリームに書き込むことを試みているJavaサーブレットです。

リダイレクト/ディスパッチ要求後にレスポンスにコンテンツが追加されないように注意してください。