概要
Kappletのテンプレート編集時、400エラー「java.lang.IllegalArgumentException: リクエストヘッダが長すぎます」が出力された時の対処法を記載します。
エラーメッセージ
以下のエラーメッセージが出力されます。
<!doctype html><html lang="ja"><head><title>HTTPステータス 400 – Bad Request</title><style type="text/css">body {font-family:Tahoma,Arial,sans-serif;} h1, h2, h3, b {color:white;background-color:#525D76;} h1 {font-size:22px;} h2 {font-size:16px;} h3 {font-size:14px;} p {font-size:12px;} a {color:black;} .line {height:1px;background-color:#525D76;border:none;}</style></head><body><h1>HTTPステータス 400 – Bad Request</h1><hr class="line" /><p><b>タイプ</b> 例外報告</p><p><b>メッセージ</b> リクエストヘッダが長すぎます</p><p><b>説明</b> サーバは、クライアントエラー(例えば、不正なリクエスト構文、無効なリクエストメッセージフレーミング、または不正なリクエストルーティング)であると考えられるために、リクエストを処理できない、または処理しません。</p><p><b>例外</b></p><pre>java.lang.IllegalArgumentException: リクエストヘッダが長すぎます org.apache.coyote.http11.Http11InputBuffer.parseHeaders(Http11InputBuffer.java:618) org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:524) org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:818) org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1627) org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) java.lang.Thread.run(Unknown Source) </pre><p><b>注意</b> 原因のすべてのスタックトレースは、サーバのログに記録されています</p><hr class="line" /><h3>Apache Tomcat/8.5.55</h3></body></html>
対処方法
{Tomcatインストールフォルダ}/conf/server.xmlの以下箇所に、「maxHttpHeaderSize="16384"」を追加後、Tomcatを再起動ください。
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
maxPostSize="10485760"
maxParameterCount="50000"
maxHttpHeaderSize="16384"
/>
※maxHttpHeaderSizeの値は参考値であり、お客様環境によって変わる可能性がございます。
区分 | 確認Ver |
トラブルシュート | 11.1.0.4 |