ページの先頭行へ戻る
Interstage Application Server V13.0.0 GlassFish 設計・構築・運用ガイド
FUJITSU Software

1.2.1 アプリケーション運用時の制限事項

項番

制限事項

対処方法

解除予定

1

アプリケーションのオートリロードを行ったアプリケーションは、配備解除を行っても以下に存在するアプリケーションの資材が残存する場合があります。

[運用資産格納ディレクトリー]\domains\domain1\applications\[配備解除したアプリケーション名]

[運用資産格納ディレクトリー]/domains/domain1/applications /[配備解除したアプリケーション名]

残存したアプリケーションの資材を手動で削除してください。

未定

2

外部リソースのファクトリクラスに存在しないクラス名を指定した場合、または、外部リソースのファクトリクラスに共通クラスローダから参照できないクラスを指定した場合、StackOverflowErrorが発生します。

外部リソースのファクトリクラスには存在するクラス名を指定してください。また、外部リソースのファクトリクラスに指定したクラスは共通クラスローダから参照できる場所に配置してください。

未定

3

下記のどれかの条件を満たす場合、文字化け、またはコード変換に失敗することがあります。

  1. マルチ言語サービスのCORBAサービス環境上のCORBAサーバーアプリケーションを呼び出すCORBAクライアントアプリケーションで、サーバーアプリケーションのオブジェクトリファレンスの獲得と、IDL定義にstring/wstring/wcharのどれかの型でマルチバイト文字列を使用しているサーバーアプリケーションを、マルチスレッドで呼び出した場合

  2. マルチ言語サービスのCORBAサービス環境上のCORBAサーバーアプリケーションを呼び出すCORBAクライアントアプリケーションで、2つ以上のコード系が違う、IDL定義にstring/wstring/wcharのどれかの型でマルチバイト文字列を使用しているサーバーアプリケーションを、マルチスレッドで呼び出した場合

  3. Interstage for GS環境上のCORBAサーバーアプリケーションを呼び出すCORBAクライアントアプリケーションで、サーバーアプリケーションのオブジェクトリファレンスの獲得と、IDL定義にstring/wstring/char/wcharのどれかの型を使用しているサーバーアプリケーションを、マルチスレッドで呼び出した場合

  • 1.または3.に該当する場合
    サーバーアプリケーションのオブジェクトリファレンスの獲得を、クライアントアプリケーションで1回だけ実行するようにクライアントアプリケーションを修正してください。

  • 2.に該当する場合
    ありません。

未定

4

GlassFish Serverインスタンスの起動処理が完了した場合であっても、ライフサイクルモジュールのREADY_EVENTは完了していない場合があります。

GlassFish Serverインスタンスの起動処理の完了前に実施する必要ある処理は、ライフサイクルモジュールのINIT_EVENTまたはSTARTUP_EVENTで実装してください。

未定

5

以下の条件を満たした場合、IIOPアクセスログにログが出力されません。

  1. GlassFish ServerクラスターにEJBアプリケーションが配備されていない。かつ、

  2. GlassFish ServerクラスターでIIOPアクセスログの出力モードにnoneが設定されていない。かつ、

  3. GlassFish ServerクラスターからCORBAアプリケーションを呼び出す場合。

GlassFish ServerクラスターにダミーのEJBアプリケーションを配備してください。

未定

6

以下の条件を満たした場合、稀にIOP00410237メッセージが出力され、クライアントアプリケーションにシステム例外を通知する場合があります。

  1. クライアントアプリケーションからEJBアプリケーションを呼び出した場合。かつ、

  2. 非フラグメントモードが設定されていない。かつ、

  3. 通信データが最大メッセージ分割サイズを超える場合。

IOP00410237が通知された場合は、EJBアプリケーションを、再度、呼び出してください。

未定

7

以下の条件を満たした場合、アプリケーションがクライアントに返却するHTTPレスポンスのBODYについて、不正な文字コードでエンコードされることがあります。

  1. アプリケーションで下記いずれかのメソッドを用いてHTTPレスポンスの文字コードを設定している。かつ、

    • javax.servlet.ServletResponse#setContentType(String)

    • javax.servlet.http.HttpServletResponse#setHeader(String, String)

    • javax.servlet.http.HttpServletResponse#addHeader(String, String)

  2. 1.の変更後、アプリケーションでjavax.servlet.ServletResponse#reset()メソッドを実行している。かつ、

  3. 2.のメソッドを実行後、HTTPレスポンスの文字コードを再度設定していない場合。

以下の方法でアプリケーションを修正してください。

2.のメソッドを実行後、下記いずれかのメソッドを用いてHTTPレスポンスの文字コードを再度設定してください。

  • javax.servlet.ServletResponse#setContentType(String)

  • javax.servlet.ServletResponse#setCharacterEncoding(String)

  • javax.servlet.http.HttpServletResponse#setHeader(String, String)

  • javax.servlet.http.HttpServletResponse#addHeader(String, String)

未定

8

h2(HTTP/2 over TLS)を使用し、Webサーバーを経由せず直接Webコンテナにアクセスする場合は、日本語などのマルチバイト文字を含むURIにアクセスできません。

HTTP/2通信を使用し、Webサーバーを経由せず直接Webコンテナにアクセスする場合は、以下の対処を行ってください。

  • h2c(HTTP/2 over cleartext TCP)を使用してください。

  • URIに日本語などのマルチバイト文字を使用しないでください。

未定

9

下記の発生条件を満たすとき、HTTP/2通信時に以下のような現象が発生する場合があります。

  • 現象1: HTTP/1.1形式でHTTPステータス400が返却される場合があります。

  • 現象2: Webアプリケーションからのリクエストボディの取得に失敗する場合があります。リクエストボディを取得するAPI (例: ServletRequest.getParameter())を実行しても、受信タイムアウトで指定した時間までAPIが復帰せず、WebアプリケーションにIOExceptionが通知されたり、空のリクエストボディが返却されたりする場合があります。

[発生条件]

  • 現象1の発生条件:

  1. Webサーバーを経由しない運用形態である。かつ、

  2. GlassFishにHTTP/2でリクエストを送信する。かつ、

  3. GlassFishに送信されるHTTP/2クライアント接続序文について、ネットワークの輻輳等によりSETTINGSフレームの到着が遅延した場合。

  • 現象2の発生条件:

  1. Webサーバーを経由する運用形態である。かつ、

  2. Webアプリケーションでリクエストボディを取得している。かつ、

  3. GlassFishにHTTP/2でリクエストを送信する。かつ、

  4. GlassFishに送信されるHTTP/2クライアント接続序文について、ネットワークの輻輳等によりSETTINGSフレームの到着が遅延した場合。

以下の方法で対処してください。

  • Webサーバーを経由する運用形態の場合、WebサーバーコネクタとGlassFish間の接続に使用するプロトコルをhttpに設定することで回避できます。

  • Webサーバーを経由しない運用形態の場合、HTTP接続にHTTP/1.1を使用することで回避で きます。

次版

10

メッセージボディを持つHTTP/2リクエストをWebコンテナが受信したとき、Webコンテナの使用メモリが増加(注)する場合があります。このため、WebコンテナがHTTP/2リクエストを多数受信した場合に、Java VMのヒープ領域不足が発生することがあります。

)数百バイト程度、ただしリクエストの内容により増減する場合があります。

以下の方法で対処してください。

  • Webサーバーを経由する運用形態の場合、WebサーバーコネクタとGlassFish間の接続に使用するプロトコルをhttpに設定することで回避できます。

  • Webサーバーを経由しない運用形態の場合、Webアプリケーションを運用するGlassFish ServerインスタンスまたはDASについて、Java VMヒープ領域の最大サイズを大きくするか、一定時間ごとに再起動することにより回避できます。

次版