※下記内容は、過去のintra-mart(Ver4.3以前)に関する内容です。
最新のintra-martでは、異なる情報であることがありますので、ご注意ください。
intra-mart BaseModule では、クライアントとのセッションを管理するためにブラウザの cookie を利用しています。
通常、ブラウザの cookie にはいくつかの制限があるため、cookie の使い方によってセッションが正常に維持できなくなる事があります。
以下は、intra-mart BaseModule が標準で提供している API または機能のうち、cookie を利用しているものです。
アプリケーションを開発する際は、cookieを使い過ぎないように注意してください。
■J2EEベース開発モデル
<imtag:ImartEvent />
jp.co.intra_mart.foundation.page.EventScript
■ページベース開発モデル
<IMART type="event">
■その他(サンプルを除く)
ワークフローの申請画面
ユーザ・組織等の検索画面
ロール検索画面
ログイン画面
■参考1:制限に関する仕様
ブラウザのcookieは、容量的な制限があります。
●保持できるcookieの総数は、300個まで
●1つのWebサーバあたり、20個まで
●1つのcookieのデータ量は、4[KB]まで(名前および値も含む)
■参考2:cookie の制限の影響を受けるプログラム例
下記のようなプログラムは、cookie の制限を受けて、正常動作しなくなる可能性があります。
●1つのページに<IMART type="event">タグを20個以上記述する
●cookieに情報を20個以上保存する
●ユーザ等の検索画面呼び出しボタンを20個以上配置する
●cookieを利用するAPI等を合計で20個以上記述する
■参考3:cookie の制限の影響を受けた場合の症例(下記は、一例です。)
●cookie に保存されているセッションIDが消えてしまった場合、サーバではセッションが切れたという(セッションタイムアウトと同様の)判定をしてしまいます。結 果として、セッション切れのエラーページが表示されます。
●ログイン画面表示時に、前回ログインした時のアカウントIDが初期表示されません。
●ログイン画面表示時に、前回ログインした時のログイングループIDが初期表示されません(複数のログイングループを設定している場合のみ)。
●ワークフローの申請ができない(申請ボタンクリック時にデータ不足というエラーメッセージが表示される)。
■捕捉
セッションを管理する方法として、通常は cookie にセッションIDを保存していますが、ブラウザからリクエストされる URL を利用してセッションIDを管理する方法もあります。
『設定ガイド<HTTP編>』の、設定項目『http-server/session-config/enable-url-rewriting』に関す る解説がありますので、これを参考にしてください。
セッションID管理に URL を使う方法の場合、cookie の制限の影響を受けてセッションを維持できなくなるということはなくなります。