問題タブ [embedded-tomcat-8]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 組み込みの tomcat サーバーを使用すると WARNING が発行される
java アプリケーションを実行するために、組み込みの tomcat(v_ 8.0.33 ) を使用しています。コンソールに次のエラーがスローされます。
正しい web.xml ファイルへのマッピングだと思いますが、どういうわけかタグを解析できず、理由がわかりません。このTomcatのバージョンが原因ですか(何かが非推奨で、私が使用している可能性があります)?
以下は私のweb.xmlです:
java - 組み込みサーバーでスプリングブートを使用して外部ライブラリを追加するには?
組み込みサーバーでSpring Bootを使用するWebアプリケーションで外部jarを使用できるかどうかを知りたいです。
例:
アプリケーションを使用すると、外部 jar 内にあるクラスに対して ClassNotFoundException のようなエラーが発生しました。
java - Tomcat 8 が組み込まれた共有クラスローダー
Tomcat をバージョン 7.0.34 からバージョン 8.0.33 にアップグレードしましたが、それ以来、Web アプリケーション コンテキストと Junit コンテキストを共有する際の問題に直面しています。
Web アプリケーションに関する統計データを収集するシングルトン クラスを持つ Web アプリケーションがあります。組み込みの tomcat で Web アプリケーションを実行する Junit もあります。Junit は Web アプリケーションにクエリを実行し、統計データをチェックします。
簡単な例を作成しようとしています:
シングルトン:
サーブレット:
コンテキストリスナー:
テストユニット:
Tomcat 7 を使用したときは、すべて正常に動作しました。しかし、TomcatをTomcat 8.0.33にアップグレードして以来、機能していません。静的データを持つシングルトン クラスは 2 回読み込まれます。最初に tomcat によって、次に Junit 自体によって。
tomcat にクラスローダーを渡そうとしましたが、うまくいきません。
私は何を間違っていますか?
java - アップグレード後に組み込みの Tomcat が起動しない - setDigest が見つからない
tomcat embedded の 8.0.x のリリースでは setDigest("SHA-1") を使用しましたが、8.5 ではこのメソッドを削除して CredentialHandler に置き換えました。次のように使用しました。
しかし、私のサーバーはまだオフで動作していません。次の例外メッセージが表示されました。
それを解決する方法はありますか?
spring-boot - Spring Boot の組み込み Tomcat からのログ ファイルの提供
ホストにアクセスする必要なく、管理者がログ ファイルを利用できるようにしたいと考えssh
ています。
うまくいけば、簡単なものhttp://myhost:myport/logs/app.log
です。
ログファイルを提供する Spring Boot を使用してエンドポイントを公開する方法はありますか?
java - 組み込み Tomcat 8 で JDBC リソースを構成する方法は?
組み込みの Tomcat 8 アプリケーション サーバーを使用するアプリケーション用に接続プールをセットアップする必要があります。通常、context.xml ファイルで新しいリソースを構成します。しかし、もちろん、組み込み版を使用する場合、そのようなファイルは存在しません。リソースの定義は次のようになります。
したがって、コンテキストにリソースを追加するための別のソリューションが必要です。コードでデータ ソース リソースを直接 Standardcontext に追加することは可能ですか? はいの場合、どのように?または、組み込みバージョンを使用している場合、他にどのようにこれを行うことができますか?
java - 同じアプリケーションで 2 つの Tomcat サーバーを実行すると、MBean の登録に失敗する
同じアプリケーション内で 2 つの組み込み Tomcat サーバーを実行しようとしていますが、「Tomcat」という名前が既に MBean として登録されているという例外が引き続き発生します。2 つの異なるプロセスで 2 つの Tomcat サーバーを実行しても問題なく動作します。1 つのプロセス内で 2 つの Tomcat サーバーを実行しようとしたときです。
同じ Tomcat サーバー インスタンスに 2 つのコネクタを作成したくない理由があります。つまり、3 つのサーバーを起動する必要がある単体テストを実行していて、3 つの個別のサーバーを実行したいのです。複数のコネクタを備えた単一のサーバーではありません。
Tomcat サーバーが MBean 登録に使用する名前を変更する方法や、MBean 登録全体を完全にオフにする方法があるかどうか疑問に思っています。
記録として、以下は同じプロセスで 2 つの Tomcat インスタンスを起動したときに得られるスタック トレースです。