- PR -

セッションIDから同一セッションを取得するには

1
投稿者投稿内容
n.w
大ベテラン
会議室デビュー日: 2003/07/15
投稿数: 126
お住まい・勤務地: 神奈川
投稿日時: 2005-09-05 14:47
お世話になっています。 セッションについて教えてください。
環境 画面 Curl
サーバ IBM Webspher6
コンパイラ WAS6 コンパイラ
struts 1.1
にて、少しCurlの特性も入りますが、通常Curlからサーバ(java)へ
データを送る際、XML形式の文字列としデータを送りJava側でParserを
かけ解析しています。

現状問題となっているのがファイルをサーバへコピーする処理を
行い為、Curlから通常のデータ通信ではなく、画像送信用に
Formを作成し、submitしているのですが、その際セッションが別物
になってしまい、RequestProcessor内でセッションからデータを
取得しNull判定をしているところで落ちてしまいます。

調査の結果はセッションが変わっている(セッションIDにて確認)と
わかったので、1度サーバ側からセッションIDを文字列として
Curlへ返し、Curlから再びセッションIDを送り返して同じセッションを
開きたいのですが、方法がみつからない状態です。


http://hoge:8080/test/action01.do
のようなサーバに対するURLのあとにセッションIDをくっつければ
同じセッションとみなすという認識だったのですが
くっつけ方が見当たらずどうしていいかわからないです。

もしくは、サーバ側でGETからセッションID(文字列)を取得し、
それをキーに作れると思いJavadocなどを見ていたのですが
発見することができませんでした。

セッションIDから同一セッションを取得する方法または参考URLとか
わかる方いましたら教えていただけるとありがたいです。
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2005-09-05 14:52
URLにどのようにしてセッションIDを書いておくか、というマナーについては仕様書に書いてありますね。
http://www.jcp.org/en/jsr/detail?id=53

仕様書をみなくてもブラウザのクッキー機能を抑止して、URLRewriting 有効にしてあげればどのようにセッションIDがくっつくか確認できるかと思います。
n.w
大ベテラン
会議室デビュー日: 2003/07/15
投稿数: 126
お住まい・勤務地: 神奈川
投稿日時: 2005-09-05 15:21
回答ありがとうございます。
セッション事態は、

http://hoge:8080/test/action01.do;jsession=XXXXX
とすることがわかりました。
ただ、RequestProcessorでセッションIDを確認したところ
かわってしまっていましたので再び対策検討してみます。

1

スキルアップ/キャリアアップ(JOB@IT)