Interstage Application Server J2EE ユーザーズガイド |
目次
索引
![]() ![]() |
第2部 Servlet/JSP編 | > 第11章 Servletサービスの環境定義ファイル | > 11.5 サーブレット・コンテナ環境定義ファイル | > 11.5.3 サーブレット・コンテナ環境定義ファイルのタグの詳細 |
サーブレット・コンテナの環境定義は、ContextManagerタグで定義します。
------------------------------------------------------------------------------- <ContextManager workDir="dir" clientSession="method" version="value" sessionRecovery="flag" name="string" sessionIdPrefix="value"> ・・・ </ContextManager> -------------------------------------------------------------------------------
属性 |
説明 |
属性の |
---|---|---|
サーブレット・コンテナが、コンパイルしたJSPのオブジェクトを格納するディレクトリを記述します。
複数のサーブレット・コンテナを起動する場合、サーブレット・コンテナごとに異なるディレクトリを指定してください。 |
○ |
|
clientSession |
セションCookieの設定方法を記述します。以下の値を指定します。
Webアプリケーション毎にセションCookieの設定方法を指定する場合は、ContextタグのclientSession属性で指定します。 |
○ |
version |
サーブレット・コンテナの下位互換性を保つためにサーブレット・コンテナのバージョンを指定します。 省略された場合は、version="4.1"以前のバージョンを指定したことになります。 |
○ |
errResponse |
リクエストの処理でErrorやExceptionが発生した場合、レスポンスにスタックトレースを返却するかどうかを設定します。以下の値を記述します。
運用時には内部の情報の漏洩を防ぐため、falseの指定を推奨します。 |
○ |
sessionRecovery (*1) |
セションリカバリ機能の有効/無効を記述します。以下の値を指定します。
有効にする場合は、本タグのname属性も合わせて指定する必要があります。true以外を指定した場合、falseが指定されたものとして動作します。 |
○ |
name (*1) |
セションリカバリ機能を有効にする場合に必ず指定する必要があります。 |
○ |
sessionIdPrefix (*2) |
セションIDに含める値を指定します。 [注意事項]
|
×(*3) |
(*1)は、Solaris OEステムの以下の製品でだけ指定可能です。
(*2)は、下記の緊急修正を適用した場合のみ指定可能です。
VL |
製品名 |
修正番号 |
5.1/5.1.1 |
Enterprise Edition |
912877-01以降 (注) |
Standard Edition |
912878-01以降 |
|
Plus |
912880-01以降 |
|
5.0.1 |
Enterprise Edition |
912616-03以降 (注) |
Standard Edition |
912617-03以降 |
|
5.0 |
Enterprise Edition |
912193-05以降 (注) |
Standard Edition |
912194-05以降 |
注)セションリカバリ機能を使用している場合
この緊急修正を適用し運用するためには、Interstage Application Server Enterprise Editionに含まれるSession Registryサーバ(FJSVjs2sr)に対応する緊急修正を適用する必要があります。詳細は適用する緊急修正のREADMEを参照してください。
(*3)は、セションリカバリ機能の動作モード(*4)が2の場合のみ。
(*4)は、com.fujitsu.interstage.jservlet.sessionrecovery.modeプロパティを参照してください。
内容 |
バージョン |
適応時期 |
||
---|---|---|---|---|
4.1 |
5.0/5.1 |
|||
RequestDispatcher.forwardを実行後にforwardを実行したサーブレットがレスポンスを出力した場合 |
V5.0リリース時 |
|||
レスポンスは無視される |
× |
○ |
|
|
レスポンスはクライアントに返される |
○ |
× |
|
|
HttpServletResponse.getWriter()で取得したPrintWriterに対し、flush()を行った場合、のHttpServletResponseの状態 |
V5.0リリース時 |
|||
commitされる |
× |
○ |
|
|
commitされない |
○ |
× |
|
|
ServletContext.getResource(“パス")の“パス"に存在しないパスを指定した場合 |
V5.0リリース時 |
|||
nullが返される |
× |
○ |
|
|
指定したパスのURLが返される |
○ |
× |
|
|
ServletからExceptionをthrowした場合 |
V5.0リリース時 |
|||
ステータスに500が設定される |
× |
○ |
|
|
ステータスに500が設定されない |
○ |
× |
|
|
HttpServletResponse.setStatus(“ステータスコード",“メッセージ")を呼出した場合、HTTPレスポンスヘッダーのStatus-Lineに |
V5.0リリース時 |
|||
“メッセージ"が設定される |
× |
○ |
|
|
“メッセージ"が設定されない |
○ |
× |
|
|
HttpServletRequest.getCookies()をCookieが存在しない場合に呼出した場合 |
V5.0リリース時 |
|||
nullが返される |
× |
○ |
|
|
空のCookie[]が返される |
○ |
× |
|
|
HttpServletResponse.sendErrorを実行後に、sendErrorを実行したサーブレットがレスポンスヘッダーを設定した場合 |
V5.0リリース時 |
|||
設定されない |
× |
○ |
|
|
設定される |
○ |
× |
|
|
レスポンスをcommit後にsendErrorを呼出した場合 |
V5.0リリース時 |
|||
IllegalStateExceptionがthrowされる |
× |
○ |
|
|
sendErrorは実行される |
○ |
× |
|
|
HttpServletResponse.sendRedirectを実行後に、sendErrorを実行したサーブレットがレスポンスヘッダーを設定した場合 |
V5.0リリース時 |
|||
設定されない |
× |
○ |
|
|
設定される |
○ |
× |
|
|
レスポンスをcommit後にsendRedirectを呼出した場合 |
V5.0リリース時 |
|||
IllegalStateExceptionがthrowされる |
× |
○ |
|
|
sendRedirectは実行される |
○ |
× |
|
|
エキストラパス情報がリクエストに存在しない場合にHttpServletRequest.getPathTranslated()を呼出した場合 |
V5.0リリース時 |
|||
nullが返される |
× |
○ |
|
|
webアプリケーションのルートディレクトリ名が返される |
○ |
× |
|
|
ServletResponse.setLocale(Locale)でLocaleを設定した場合のContent-Languageレスポンスヘッダーの値 |
V5.0リリース時 |
|||
“言語"-“国"が設定される |
× |
○ |
|
|
“言語"が設定される |
○ |
× |
|
|
リクエストヘッダーにAccept-Languageが複数指定されている場合にHttpServletRequest.getHeaders("Accept-Language")を呼出した場合 |
V5.0リリース時 |
|||
1つ1つの値が1つの要素としてEnumerationが返される |
× |
○ |
|
|
","で区切られた値を1つの要素としてEnumerationが返される |
○ |
× |
|
|
ボディが空の場合は、doInitBody()やdoAfterBody()は呼ばれない |
V5.0リリース時 |
|||
doInitBody()やdoAfterBody()は呼ばれる |
× |
○ |
|
|
doInitBody()やdoAfterBody()は呼ばれない |
○ |
× |
|
|
カスタムタグがボディなしの場合、コンテナはNullPointerExceptionをスローする |
V5.0リリース時 |
|||
コンテナはNullPointerExceptionをスローする |
× |
○ |
|
|
コンテナはNullPointerExceptionをスローしない |
○ |
× |
|
|
<jsp:forward>アクションを使用する前に出力を行った場合 |
V5.0リリース時 |
|||
その出力はクリアされる |
× |
○ |
|
|
その出力はクリアされない |
○ |
× |
|
|
RequestDispatcher.forwardを呼出す前にレスポンスに対して出力を行った場合 |
V5.0リリース時 |
|||
レスポンスに対して行った出力はクリアされる |
× |
○ |
|
|
レスポンスに対して行った出力はクリアされない |
○ |
× |
|
|
ServletContext.setAttributeで設定する値にnullを指定して呼出した場合 |
V5.0リリース時 |
|||
removeAttributeを呼出した時と同じ動作をする |
× |
○ |
|
|
NullPointerExceptionがスローされる |
○ |
× |
|
|
ServletRequest.setAttributeで設定する値にnullを指定して呼出した場合 |
V5.0リリース時 |
|||
removeAttributeを呼出した時と同じ動作をする |
× |
○ |
|
|
何もしない。設定した値はそのまま変わらない |
○ |
× |
|
|
HttpSession.setAttributeで設定する値にnullを指定して呼出した場合 |
V5.0リリース時 |
|||
removeAttributeを呼出した時と同じ動作をする |
× |
○ |
|
|
NullPointerExceptionがスローされる |
○ |
× |
|
------------------------------------------------------------------------------- <Server> <ContextManager workDir="work/sample" clientSession="permanent" version="5.1" sessionRecovery="false" name="string"> ・・・ </ContextManager> </Server> -------------------------------------------------------------------------------
使用しなくなったJSPファイルが多くなり、JSPより生成された不要なサーブレットが増えた場合、<ContextManager>タグのworkDir属性に指定したディレクトリ配下に生成されたファイルやディレクトリを削除してください。
目次
索引
![]() ![]() |