弊社のプロジェクトは Java で開発され、ミドルウェアは Tomcat でした。運用中に、Tomcat でいくつかの例外が発生しました。参考までに、例外と解決策を以下に記録します。 (随時追加中…) 異常1: 1. ログの内容
2. 解決策 tomcat インストール フォルダーの conf/catalina.properties ファイルに次の行を追加します。 例外2: 1. ログの内容 com.alibaba.druid.stat.DruidStatService]mbean の登録解除エラー javax.management.InstanceNotFoundException: com.alibaba.druid:type=DruidStatService com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean(DefaultMBeanServerInterceptor.java:1095) で com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.exclusiveUnregisterMBean(DefaultMBeanServerInterceptor.java:427) で com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.unregisterMBean(DefaultMBeanServerInterceptor.java:415) で com.sun.jmx.mbeanserver.JmxMBeanServer.unregisterMBean(JmxMBeanServer.java:546) で com.alibaba.druid.stat.DruidStatService.unregisterMBean(DruidStatService.java:374) で com.alibaba.druid.stat.DruidDataSourceStatManager.removeDataSource(DruidDataSourceStatManager.java:202) で com.alibaba.druid.pool.DruidDataSource$2.run(DruidDataSource.java:1479) で java.security.AccessController.doPrivileged(ネイティブメソッド) com.alibaba.druid.pool.DruidDataSource.unregisterMbean(DruidDataSource.java:1475) で com.alibaba.druid.pool.DruidDataSource.close(DruidDataSource.java:1434) で sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブ メソッド) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) で sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) で java.lang.reflect.Method.invoke(Method.java:606) で org.springframework.beans.factory.support.DisposableBeanAdapter.invokeCustomDestroyMethod(DisposableBeanAdapter.java:354) で org.springframework.beans.factory.support.DisposableBeanAdapter.destroy(DisposableBeanAdapter.java:277) で org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.destroyBean(DefaultSingletonBeanRegistry.java:578) で org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.destroySingleton(DefaultSingletonBeanRegistry.java:554) で org.springframework.beans.factory.support.DefaultListableBeanFactory.destroySingleton(DefaultListableBeanFactory.java:972) で org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.destroySingletons(DefaultSingletonBeanRegistry.java:523) で org.springframework.beans.factory.support.DefaultListableBeanFactory.destroySingletons(DefaultListableBeanFactory.java:979) で org.springframework.context.support.AbstractApplicationContext.destroyBeans(AbstractApplicationContext.java:1006) で org.springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:982) で org.springframework.context.support.AbstractApplicationContext.close(AbstractApplicationContext.java:934) で org.springframework.web.context.ContextLoader.closeWebApplicationContext(ContextLoader.java:583) で org.springframework.web.context.ContextLoaderListener.contextDestroyed(ContextLoaderListener.java:116) で org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4900) で org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5537) で org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:221) で org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1424) で org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1413) で java.util.concurrent.FutureTask.run(FutureTask.java:262) で java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) で java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) で java.lang.Thread.run(Thread.java:745) で 2. 解決策 tomcat の bin ディレクトリにある catalina.sh ファイルを変更し、# OS 固有のサポートの間に JAVA_OPTS="-Ddruid.registerToSysProperty=true" を追加します。$var は true または false に設定する必要があります。および cygwin=false 例外3: 1. ログの内容 INFO [http-nio-80-exec-16] org.apache.coyote.http11.AbstractHttp11Processor.process HTTP リクエスト ヘッダーの解析エラー 注意: HTTP ヘッダー解析エラーがさらに発生すると、DEBUG レベルでログに記録されます。 java.lang.IllegalArgumentException: メソッド名に無効な文字が見つかりました。HTTP メソッド名はトークンである必要があります org.apache.coyote.http11.AbstractNioInputBuffer.parseRequestLine(AbstractNioInputBuffer.java:236) で org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1065) で org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:684) で org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1539) で org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1495) で java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) で java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) で org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) で java.lang.Thread.run(Thread.java:745) で 2. 解決策 tomcat インストール フォルダーの conf/server.xml を変更します。<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" maxHttpHeaderSize ="10240" redirectPort="8443" /> では、maxHttpHeaderSize の既定値は 8*1024 です。必要な値に調整するだけです。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
>>: MySQL のインデックス障害の一般的なシナリオと回避方法
この例では、Linux への Python 3.8 のインストールを例に挙げます。 1. 依存パッケ...
<br />みなさんこんにちは!ここで皆さんとチャットできて光栄です! (*^__^*)...
目次序文いくつかの一般的なビット操作ビットAND (&)ビットOR (|)ビット否定(~)マ...
目次フロントエンド上記のアイデアに従って、ページめくり機能を設計して記述します。バックエンド(Jav...
Jellyka Beesアンティーク手書き [ank]* ジェリーカ・カティカップケーキ LHF ジ...
目次1. はじめに2. 環境整備1. 基本環境3.Mysqlマスタースレーブ構成をインストールする1...
目次1. axiosをインストールする2. アクシオスの使用1.ホームページでaxiosを参照する2...
プロットレビュー前回の記事では、ロケーション命令の解析プロセスを分析しました。この内容を簡単に確認し...
方法:説明: どちらも達成できません:方法1: sp_product から sp.productid...
通常、国喪の日、大地震の日、清明節には、ウェブサイト全体を灰色にして、故人への哀悼の意を表します。そ...
1. 環境と関連ソフトウェア仮想マシン: VMwore Workstation Linuxシステム:...
1. 表示効果: 2、HTML構造 <div class="プロセスリスト-lpu...
シェル スクリプト言語は、すべてのプログラミング言語の中で最も単純な言語であるため、資格のある Li...
今では多くの人がウェブサイト作成に参加していますが、ウェブサイトはどのように作成すればよいのでしょう...
目次トリガーとは何かトリガーを作成する複数の実行ステートメントを持つトリガーの作成制限と考慮事項要約...