• ベストアンサー

エクリプスを使ってのセッション課題

elder2の回答

  • ベストアンサー
  • elder2
  • ベストアンサー率50% (3/6)
回答No.2

Eclipseは関係ありません。 Eclipseからアプリケーションサーバ(以下APサーバ)を起動していて、 そのAPサーバを再起動しただけなのでは? APサーバは、セッション情報をクッキーに保存するため、 ブラウザを閉じてもセッションが無効になるわけではありません。 セッションが無効となるのは、APサーバが無効と判断したときです。 セッションは、プログラム中でHttpSession#invalidate()を実行するか、 セッションタイムアウトで無効となります。 しかし、この場合は「ブラウザの閉じる」に対応できないため、 パスワード認証で対処すると良いと思います。 >普通は二つブラウザを立ち上げれば別のものとして >セッションが確立されると思うので質問させていただきました。 確か同じブラウザ(PC?)なら同じセッションになった気が…。

参考URL:
http://www.techscore.com/tech/Java/Servlet/4.html
yusuke_e_2002
質問者

お礼

解決しました!! 自分はトップページのURLをうつのが面倒なので 一度トップページを開いたあと、そのページへの ショートカットをデスクトップにおいておいたんです。 それがいけなかったみたいで IEから起動してお気に入りから呼ぶと 別セッションとして認識してくれました。 セッションIDを使ってユーザー認証をかけていたので 別セッションだと認識してくれないと、 ユーザー認証画面すら飛んでくれず困っていたんです。 ありがとうございました。 お礼コピペさせていただきます。 ・・・なぜショートカットは駄目なんだぁ!!

関連するQ&A

  • セッションについて

    セッションはたとえブラウザを落としても維持されると思うのですが、どのような情報から同じものからのアクセスであるとサーバは見分けているのですか? ipアドレス?MACアドレス?ホスト名?ブラウザ? しかしこれだけだとOSに別アカウントで入ったときには、同じセッションを使われるのではないかと思いました。しかしそんなことはないだろうと思うので、どなたかどのような情報からサーバが個人を識別しているか教えていただけると助かります。

  • エクリプスのメリット、デメリットについて教えてください。

    私はまだプログラマー初心者で半年ほど民間のJAVA教室に通い、最近あるシステム会社に転職しました。 現在その会社でJAVAの実習をやっているのですが開発環境が古く、エディタも普通のテキストエディタでjdkも1.3を使っています。 民間の教室に通っていたころは少しエクリプスも触っていたので、便利なことは少し理解していたのでなぜシステムを開発する現場において導入していないのか理解できません。 また、実習も2001年頃開発したシステムを基に別のシステムを作るというものなのですが、servletしか使用していないため、画面の作成においてJSPも使っていません。 そこで、こういった古い環境で開発のメリットがあるのかどうか?また、エクリプスについて導入する際のメリット、デメリットなど教えてください。 その他、本来なら直接上司などに聞いたらよいのでしょうが、まだ入社して浅いため、知識の無い私がいきなり聞くのもどうかと思い情報を集めたいと思っています。 雑然とした質問ですみませんが不足している情報については都度返答しますのでよろしくお願いします。

  • セッション情報を別々にしたい

    こんにちは、Kwnshと申します。 セッション情報についての質問があるのですが、 ブラウザからサーブレットをコールしたとき セッション情報が取得できますが、現在開いているブラウザを 新しいウィンドウ(ctrl+nとか)で開いた場合 新しいウィンドウのセッション情報がコピー元のセッション 情報と同じになってしまうのですが、このセッション情報を 別物にすることはできないのでしょうか?新規にブラウザを 開きサーブレットをコールしたときは別セッション情報に なるのですが、新しいウィンドウで開いた場合別セッションに するといったことはできないのでしょうか?

    • ベストアンサー
    • Java
  • サーブレット sessionスコープに関して

    こんばんは。 『sessionスコープはPCごと』に関しての質問なのですが、 (http://www.atmarkit.co.jp/fjava/rensai3/tomcat09/tomcat09_02.htmlから抜粋) ログイン後、ユーザ名をsessionに保持し、どの画面に遷移してもユーザ名が表示されるシステムで、 同一PCの2つのブラウザから別ユーザでログインしても、きちんとユーザ名が識別できその後も識別したまま操作できます。 なぜ、このような現象が起こるのでしょうか? 私は、『1PC = 1Session』なら後からログインしたユーザ名でsessionデータが上書きされると思っていました。 req.getSession().setAttribute("userName", form.getUser()); このソースは、sessionIDで識別し取得したsessionスコープにform.getUser()をuserNameという名前でバインドする。という感じですよね? 『1ブラウザ = 1session』なのでしょうか? ※1ブラウザとは子画面も含みます。以下↓ yahooなどでリンクを押して別画面に派生する場合は、別ブラウザが立ち上がってもログイン名が出るので、同一sessionだなと思います。 間違っていますか?

    • ベストアンサー
    • Java
  • セッションについて

    セッションについていくつか質問させて頂きたい事があります。 よろしくお願いします。 1. Cookieの場合、Windowsだと通常C:\Documents and Settings\AAA\Cookies のようなディレクトリにデータが保存されるが、セッションを扱う場合、クライアントのどのディレクトリにセッションIDの情報が記憶されるのか? 2.初期設定では、サイトにアクセスして発行されたセッションIDは、ブラウザを閉じた時に自動的に破棄されるようになっているのか? 3.上記の2が真の場合、ブラウザを閉じた後にまた開き、再度サイトにアクセスする毎に毎回異なる値のセッションIDを発行することは出来るのか? 以上の3つです。 また、参考になりそうなサイトがありましたらURLを載せて頂けるととても助かります。 どなたか詳しい方いらっしゃいましたらご教授よろしくお願いします。

    • ベストアンサー
    • PHP
  • Apache→Tomcatでセッション維持されない

    Apache->Tomcatでセッションが維持されない Apacheのproxy_ajp.confの設定を ProxyPass /xxx/ ajp://localhost:8009/ とした時にhttp://サーバー名/xxx/(webapps内フォルダ名)/ でアクセスした場合アクセスする度に新しいセッションIDになってしまします。 Apacheのproxy_ajp.confの設定を ProxyPass / ajp://localhost:8009/ とした時にhttp://サーバー名/(webapps内フォルダ名)/ でアクセスした場合はセッションIDは保持されます。 http://サーバー名/でアクセスした時はTomcatのwebappsとは別の場所に配置したWebサイトを表示させている為、 【ProxyPass / ajp://localhost:8009/】とは設定したくはないんですが・・・ どうしたらよいでしょうか・・・? 今の状況 ■http://サーバー名/xxx/(webapps内フォルダ名)/  でアクセスするとセッションが保持されない。 ■Apache単体でphpを使った時、セッションは保持される。 ■8080ポートを使ってTomcatへ直接アクセスした場合、セッションは保持される。 環境 OS:CentOS 5 Apache:2.2 Tomcat:6.0

    • ベストアンサー
    • Java
  • セッション管理を携帯用とPC用

    セッション管理を携帯用とPC用で分けて作成しております。 携帯用では、ログイン後も、GETにセッションIDを付加しているので、自分のサイト内の他のURLにアクセスしても、セッションが引き継がれるのですが(2回目のsession_start()後OK) PC版の方がログインした後、セッションが他のURLに引き継がれません。(PHP PEARのAUTHを使用) 2回目のsession_start()後初期化されてしまうのですが、この問題は携帯と同じようにGETにセッションIDを付加するしか方法はないのでしょうか? セッション変数をグローバル変数に保持するなどは出来ないのでしょうか?

    • 締切済み
    • PHP
  • セッション

    セッションとクッキーで質問です。 1.session_id()やsession_name()っていつ使うのでしょうか? ブラウザは特定できても個人を特定できるわけではないですよね?それとも ブラウザを特定して管理するためなのでしょうか? 2.自動グイン機能を実装しようと思うとき、 クッキーとサーバー側(正確にはdb)にランダムな文字列を格納し、次回サイトを訪れた際、保存している値とクッキーにある値を照合し合えばログインしたことにする。 上記のようなロジックで大丈夫でしょうか?

    • ベストアンサー
    • PHP
  • セッションIDについて

    セッション管理について、まったく経験がないので、アドバイスお願いいたします! 現在のWEBシステムですが、なぜかIPアドレスのみでしかアクセスできない作りになっています。 それでは困るので、ドメイン名でアクセスできるようにと改修をお願いしたところ、 今度はドメイン名のみでしかアクセスできないがいいか?・・・と質問が届きました。 普通、WEBシステムを使うほうから考えますと、 IPでアクセスしようが、ドメインでアクセスしようが どちらでも動くのが当たり前のように思うのですが。 プログラムの作りでそうなってるのかもしれませんが これって変ですよね? それともよくあることなのでしょうか? 理由を確認したところ、 サーバ名を用いたURLでの構築を行っていないため、ページ遷移を行うとログインエラーが発生する箇所があるとの事。 システムは管理者の機能と一般の機能があり、当然別々の動きをしなければならないのですが 推測するに、IPアクセスだったら管理者、ドメイン名だったら一般というような判断をしているのでは?と思われます。 IPアクセスのみというのを知らずに、ドメイン名でアクセスして試験をしていたら 途中でURLがIPに変わり(cgiでphpが動いて)、エラーになったのです。 session情報は同ドメイン上で有効であるため、 IPでアクセスした場合とドメイン名でアクセスした場合ではセッション情報を引き継げないため、 ログイン情報無しと判断されるため・・・ が原因ということなのですが 実際、SESSIONIDにはどんな内容が入ってくるのでしょうか? 管理者と一般のふたつの機能をセッションIDを使って、切り分けるのはできないことなのでしょうか? セッションIDは使ったこともないので問題外かもしれませんが 自分だったら、今は管理者、今は一般・・・というような情報をhiddenに持つとか、 リンクできる情報をテーブルに持つとかするかな... なんて思いながら、セッションID ってこんな時、どうやって使うのかな? と疑問だらけです。 セッションIDを使って、ふたつの機能を使い分けることはできないのでしょうか? または、ふたつの機能を切り分けできる他の方法などありましたらアドバイスいただけないでしょうか?

    • ベストアンサー
    • CGI
  • セッションの破棄

    お世話になります。 現在セッションを使用してのPHPプログラムのコーディングに取り組んでおりますが、 なんとなくですがセッションのことはつかめつつあります。 そこで、基本的な質問になるのですが教えてください。 1.セッションは必ず破棄しないといけないのか。 私の想像としては、一定時間(20分くらいだったような…)またはブラウザを閉じたときにセッションが破棄されるものと思っていました。 ですが、ある掲示板で 「セッションが不要になった段階でセッションを破棄してください。  これをしないとサーバ上にセッションデータ(ファイル)がたまっていきます。」 という記述を見つけました。 必ずセッションというものは破棄しないといけないのでしょうか。

    • ベストアンサー
    • PHP