問題タブ [web-container]
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 - Java EE で http を https にリダイレクトする
Sun Application Server / Web Server で https への http リダイレクトを行う方法は?
java - 複数の Java Web コンテナー インスタンスを管理するためのツール?
Java Web Container (jetty や tomcat など)、または管理コンソールからサーバー インスタンスを作成/削除できるツールを探しています。
問題は、組織が品質管理テスト用にテスト サーバーのさまざまなインスタンスを作成する必要があることです (さまざまなデータベース構成に対して)。現在、Tomcat の「catalina_base」テンプレート ディレクトリを手動でコピーし、実行中のテストに必要な変更を加える必要があります。ボタンをクリックして新しいインスタンスを作成する (そして別のボタンをクリックして削除する) ことができる統一されたインターフェイスがあると便利です。
編集 1
Windows Server 2003 で実行できる必要があります。
編集 2
ビルドに関係する多くの回答を得ているので、アプリケーションに関する追加情報を追加します。このアプリケーションは、ANT スクリプトを使用して構築された標準の Java EE Web アプリケーションです。データベースへの接続には、コンテナー管理の JNDI DataSource を使用します。20 年以上前から引き継がれている私たちの手順では、新しいデータベースの変更はすべて新しいスキーマで行う必要があると規定されています。
たとえば、アプリケーションが間違った計算を表示していると顧客から報告されたとします。最初に行うことは、新しいデータベース スキーマを作成することです。次に、すべてのデータベース オブジェクトに対して作成スクリプトを実行し、最後に本番環境からデータをテスト用にコピーします。新しいスキーマ。バグ (アプリケーション側またはデータベース側) を修正したら、品質管理担当者は、修正されたアプリケーションと DataSource 内のスキーマを新しい「テスト環境」のものに変更する必要があります。テストが完了したら、次の予定されているリリースに含めるコードをステージングします。
問題は、このプロセスに多数の開発者が掛けられ、多数のバグが同時に修正され、機能が追加されることです。現在、さまざまなバージョンのアプリケーションおよびデータベース オブジェクトを管理する 20 以上の Tomcat インスタンスがあります。機能が追加され、品質管理が完了すると、常に新しい Tomcat インスタンスを作成し、古いインスタンスを削除する必要があります。
apache - APACHE-TOMCATは、WebサーバーとWebコンテナーのどちらであるかを誰かが詳しく説明できますか?
こんにちはほとんどの場合、TomcatはWebサーバーです。TomcatはWebコンテナであると読むこともあります。ApacheはWebサーバーであると読むこともあります。少し戸惑います。誰かが正しく説明できますか?
ありがとう..
web-applications - GlassFishの下のWebアプリ内のファイルへのパス
Webアプリケーションでファイルへのパスを指定するにはどうすればよいですか?WEB-INFの下に「templates」という名前のフォルダがあります。GlassFishv3ではパスは次のようになるはずだと言われています。
しかし、このようにして、ファイルが見つからないという例外が発生します。それを機能させるために何を変更する必要がありますか?
java - サーブレットセッションと2つのwarファイル
質問したいのですが...1つのWebサーバーで2つの戦争の間のセッションを維持することは可能ですか。たとえば、
- A)WARファイルA
B)WARファイルB
WARファイルAには
..。
..。
だから私の質問は...私はコードを次のように呼び出すことができますか
... WARファイルBから、WARファイルAの「HelloWorld」値を取得しますか?
有用なコメントをいただければ幸いです
java - サーブレット-多くのコンテキスト-データベース接続を共有する方法は?
.warファイルAと.warファイルBと.warファイルCがあります。BとCはデータベース接続を使用する必要があるため、データベース接続を共有するために.warAを使用することにしました。ただし、問題は、.warファイルが独自のコンテキストで制限されていることです。だから私の質問は、データベース接続を取得して、TomcatWebアプリ間で共有する方法ですか?そして、いくつかのアプリだけに接続アクセスを制限するにはどうすればよいですか?
gwt - GWT-サービスBのメソッドBからサービスAのメソッドAを取得する方法は?
.warAおよび.warBとしてGWTプロジェクトがあります...各.warのサーブレットには次のようなメソッドが含まれています
- .war A-文字列methodA(){return"これは.warAのメソッドAです";}
- .war B-文字列methodB(){return(?)。methodA(); }
事は...methodBからmethodAの値を取得したいのですが。だから私の質問は...それを行うことは可能ですか?そして、GWTによるとそれをどのように行うのですか?
有用なコメントをいただければ幸いです
java - Web コンテナーでの Spring バッチ ジョブの起動について
Web コンテナーから効率的にバッチ ジョブを実行する必要がある場合、 TaskExecutorインターフェイス (非同期バージョン)の別の実装を使用する必要があるという事実に出くわしたとき、私は Spring Batch のドキュメントを読んでいました。
HTTP 要求がバッチ ジョブをトリガーすると想定しています。そして、私が理解しているように、クライアントがJobLauncherインターフェースの run メソッドを介してジョブを起動すると、クライアントはJobExecutionオブジェクトが返されるのを待つ必要があり、典型的なバッチジョブは最後に何時間も実行されるため、これはおそらくジョブが同期的に実行される場合、あまり実現可能ではありません。現在、AsyncTaskExecutorは各ステップを個別のスレッドで実行し、UNKNOWN ステータスでJobExecutionオブジェクトをすぐに返します。
まず、クライアントサーバー接続の観点からこれがどのように機能するかを誰かに説明してもらえますか? いずれの場合も、クライアントはセッションを終了する前にバッチが終了するのを待たないでしょうか? または、クライアントはバッチ ジョブの終了ステータスを認識しませんか? バッチが終了するまで接続を維持しなければならないという問題全体に関係していますか?
例として、クライアントが、サーブレットのdogetメソッドによって処理される HTTP get 要求を送信する Web ページを持っているとします。このメソッドは、ジョブ ランチャーのrunメソッドを呼び出します。このメソッドはJobExecutionオブジェクトを返します。そして、話の残りは上記の通りです。
ありがとう、アディティア。
multithreading - サーブレットスレッドプールとサーブレットインスタンスプール-Webコンテナによる
jbossのようなWebコンテナーには、作成するサーブレットのスレッド数を指定するパラメーターがあることを理解しています。これは、コンテナーがサーブレットの単一インスタンスで実行するために作成できるスレッドの最大数です。
しかし、私の質問は、作成するサーブレットのインスタンスの数を指定する方法はありますか?はいの場合、目的は何ですか?これが必要なのは、リクエストを処理することです。たとえば、単一のインスタンスで実行されている1つまたは複数のスレッドが、そのサーブレットデータを何らかの形で破損したり、destroy()したりする場合は、冗長性を確保します。
session - WebSphere Command/JSP/etc によって呼び出される POJO 内の httprequest オブジェクトへのアクセス?
短いバージョン: WebContainer によって実行される Command/JSP によって呼び出される POJO コードから HttpRequest オブジェクトにアクセスするにはどうすればよいですか?
- POJO は CommandContext または HttpRequest (またはそのいとこ) を認識しません。
- POJO は実行スタックのかなり奥深くにあるため、メソッドのシグネチャを変更すると、すべての親メソッドのシグネチャと、これらのメソッドが呼び出される場所が変更されます。
同様の投稿も確認しました(私のPOJOはWebContainerによって呼び出され、このようなフープを経由せずにリクエストにアクセスする方法が必要です):Webコンテナ外のPOJOからWebセッションを取得する
長いバージョン:私は干し草の山でこの針を見つけようとしてきました: 現在の WebContainer スレッド (または、TransactionManager を介してトランザクションを取得するのと同様のその他の手段)。
これらのコンテナ スレッドが単一の実行中のページ/コマンド/etc に結び付けられていることを知っているので、WorkArea、ThredLocal スタイルのあまり望ましくないアプローチを使用せずにこれを行う方法があるかどうか疑問に思っていました。
私たちが直面している問題は、何年にもわたって、storeId や langId を気にせずに書かれた多くのコードがあったことです。したがって、これらすべてのコードを修正するのではなく、何らかの方法で (HttpRequest オブジェクトを使用して) セッション コンテキストにアクセスし、CommandContext やその他の構造を取得して、storeId と langId およびセッションに関連付けられたその他のデータを見つけられるようにしたいと考えています。 .
さらに詳細が必要な場合は、お気軽にお問い合わせください。
擬似コード スニペットの例:
どんな助けでも大歓迎です。