Cosminexus 機能解説

[目次][用語][索引][前へ][次へ]

12.7.2 URL書き換えによる制御をする場合のアプリケーションの実装

URL書き換えによってグローバルセッションを制御する場合の,Webアプリケーションの実装方法について説明します。

<この項の構成>
(1) 使用するServlet API
(2) JSPの記述例

(1) 使用するServlet API

Webアプリケーションを実装する際には,次に示すServlet APIを使用して実装してください。

なお,グローバルセッションIDのエンコードは,グローバルセッションが存在している場合に,Webアプリケーション内でこれらのServlet APIが呼び出され,HTTPセッションのセッションIDのエンコードが必要と判断されたときにだけ実行されます。

これらのServletAPIを使用しないでWebアプリケーションを実装している場合,グローバルセッションIDのURL書き換えは実行されません。この場合,HTTPセッションおよびグローバルセッションは継続されません。

(2) JSPの記述例

URL書き換えによってグローバルセッションを制御する場合のJSPの記述例,および出力されるレスポンスの内容を示します。

JSPの記述内容
 
<a href="<%= response.encodeURL("nextPage.jsp") %>">link</a>
 
なお,この例は,次の前提に従っています。
  • HTTPセッションのセッションIDは"xxxxx"である。
  • グローバルセッションIDは"yyyyy"である。
  • グローバルセッションIDの送信に使用するURLのパスパラメタ名は"gsessionid"である。

出力されるレスポンスの内容
 
<a href="nextPage.jsp;jsessionid=xxxxx;gsessionid=yyyyy">link</a>
 
注意
次に示すように,URL書き換えを使用しないでパスパラメタを設定するアプリケーションの場合,グローバルセッションのURL書き換えが実行されません。この場合,セッションフェイルオーバ機能が有効になりません。

URL書き換えによるグローバルセッションの制御が有効にならない例(JSPの場合)
 
<a href="nextPage.jsp;jsessionid=<%=session.getId()%>">link</a>