Webサーバコネクタ(Interstage HTTP Server用)とWebサーバコネクタ(Interstage HTTP Server 2.4用)は資源が異なるため、バックアップ・リストア機能による資源の移行はできません。そのため、新たにWebサーバー連携設定を行う必要があります。
Webサーバー連携方法は、Java EE 5機能とJakarta EE 8機能で以下の違いがあります。
Java EE 5機能
asadminコマンド、またはInterstage Java EE管理コンソールで操作
Jakarta EE 8機能
asadminコマンド、またはGlassFish Server管理コンソールで操作
Java EE 5機能
isj2eeadminコマンド、またはInterstage管理コンソールで操作
事前にInterstage管理コンソールの[システム] > [環境設定]タブ > [Servletサービス詳細設定] > [Webサーバとワークユニットを同一のマシンで運用する]で[運用しない]を選択しておく
Jakarta EE 8機能
wscadminコマンドで操作
[Webサーバとワークユニットを同一のマシンで運用する]に対応する設定は不要
Jakarta EE 8ではWebコンテナへの最大接続数の使用はサポートしていません。そのため、Webサーバコネクタの動作設定時にインスタンスへの最大接続数が制限できなくなります。代替手段としてWebコンテナの同時処理数および接続数をチューニングすることで対応してください。Webコンテナの処理可能な上限を超過した場合に新規リクエストを受け付けると、クライアントにHTTPステータスコード502を返却します。
設定内容の詳細は、「6.4 Webコンテナのチューニング」を参照してください。
また、Webコンテナへの最大接続数がサポートされなくなったことに伴い、Java EE 5とJakarta EE 8で以下の差異があります。
asadmin update-web-server-connector-configサブコマンド
Jakarta EE 8では--maxprocessorsオプションが指定できなくなります。
asadmin show-web-server-connector-configサブコマンド
maxprocessorsの値が表示されなくなります。
GlassFish Server管理コンソール
Webコンテナへの最大接続数の設定ができなくなります。
Webサーバコネクタ経由でリクエストを送信する場合のAPIの戻り値が異なります。Webサーバーが動作する環境の情報を取得する場合は、ServletRequest#getServerName()、ServletRequest#getServerPort()を使用してください。
API名 | Java EE 5 | Jakarta EE 8 |
---|---|---|
ServletRequest#getLocalAddr() | Webサーバーが動作する環境のIPアドレス | Webコンテナが動作する環境のIPアドレス |
ServletRequest#getLocalName() | Webサーバーが動作する環境のホスト名 | Webコンテナが動作する環境のIPアドレスまたはホスト名 |
ServletRequest#getLocalPort() | リクエストを受け付けたWebサーバーのポート番号 | リクエストを受け付けたHTTPリスナーのポート番号 |
Webサーバー連携する場合の動作が異なります。
Java EE 5ではローカルホストにおけるDNS逆引きの有効化の値に関わらず、ServletRequest#getLocalName()はWebサーバーのホスト名を返却します。
Jakarta EE 8ではローカルホストにおけるDNS逆引きの有効化の値によって、ServletRequest#getLocalName()実行時にWebコンテナのホスト名の解決を行うか制御します。
Webサーバーを経由する場合の詳細については、「4.7 Webサーバーを経由する場合の運用準備」を参照してください。