隨筆 - 154  文章 - 60  trackbacks - 0
          <2007年9月>
          2627282930311
          2345678
          9101112131415
          16171819202122
          23242526272829
          30123456

          聲明:

          該blog是為了收集資料,認(rèn)識朋友,學(xué)習(xí)、提高技術(shù),所以本blog的內(nèi)容除非聲明,否則一律為轉(zhuǎn)載!!

          感謝那些公開自己技術(shù)成果的高人們!!!

          支持開源,尊重他人的勞動!!

          常用鏈接

          留言簿(3)

          隨筆分類(148)

          隨筆檔案(143)

          收藏夾(2)

          其他

          學(xué)習(xí)(技術(shù))

          觀察思考(非技術(shù))

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          在找東西時偶然看到的覺得很有趣就粘過來了,也許以后用得著!

          刪除了論壇中一些回復(fù),或許應(yīng)該改個名字叫:服務(wù)器之間的重定向!



          最近在做一個單點登錄的接口,基本實現(xiàn)如下:
          1. webApp-A
                  if (session.getAttribute("UserID") != null) {
                    response.sendRedirect(ssoURL);
                  }
          2. webApp-B (在另外一臺服務(wù)器上)
             顯示登錄界面,登錄,然后返回我webApp-A的一URL
          3. webApp-A 根據(jù) 返回URL中的result參數(shù)判斷登錄的結(jié)果,并設(shè)置session變量UserID

          問題就出在了在重定向到ssoURL,并從webAPP-B返回后,weblogic的sessionid變了,所有的session 變量都沒有了,刷新一次sessionid就變一次,同樣的程序用tomcat一點問題都沒有,不知道問題出在哪,該怎么解決

          -------------------------------------------------------------------
          webApp-A和webApp-B 分別跑在不同的服務(wù)器上
          webApp-A 中會重定向到webApp-B的URL
          webApp-B 中也會重定到webApp-A的URL
          -----------------------------------------------------------------

          測試代碼如下:
          a.jsp

          <%@ page contentType="text/html; charset=GBK" %>
          <html>
          <head>
          <title>
          a
          </title>
          </head>
          <body bgcolor="#ffffff">
          <h1>
          JBuilder Generated JSP
          </h1>
          <%
          out.println("SessionID:"+session.getId());
                  response.sendRedirect("http://localhost:8080/wtui/b.jsp");
          %>
          </body>
          </html>


          b.jsp

          <%@ page contentType="text/html; charset=GBK" %>
          <html>
          <head>
          <title>
          b
          </title>
          </head>
          <body bgcolor="#ffffff">
          <h1>
          JBuilder Generated JSP
          </h1>
          <%
          out.println("SessionID:"+session.getId());
                  response.sendRedirect("http://localhost:7001/wtui/c.jsp");
          %>
          </body>
          </html>


          c.jsp

          <%@ page contentType="text/html; charset=GBK" %>
          <html>
          <head>
          <title>
          c
          </title>
          </head>
          <body bgcolor="#ffffff">
          <h1>
          JBuilder Generated JSP
          </h1>
          <% out.println("SessionID:"+session.getId());
          %>
                  <A href="a.jsp"><br>返回</A>
          </body>
          </html>


          把a.jsp,c.jsp 放到本機的7001端口,b.jsp 放到本機的8080端口,
          (我的7001端口是weblogic 8.1 sp2,8080端口是tomcat 5.0),然后 http://localhost:7001/wtui/a.jsp
          最后可以看到c.jsp顯示出來的session id, 刷新一下頁面,看看是不是每次session id 都在變?

          ---------------------------------------------------------------------------------------------------------------

          今天下午總算是找到了問題的原因了
          只要把a.jsp中的
          response.sendRedirect("http://localhost:8080/wtui/b.jsp");
          改為
          response.sendRedirect("http://127.0.0.1:8080/wtui/b.jsp");

          就一切正常了,原來做模擬環(huán)境的時候沒有找兩臺機器,只是在同一機器開了兩個端口。

          不過我還是想知道為什么weblogic為出現(xiàn)這種問題

          (完)
          posted on 2007-09-27 11:17 lk 閱讀(2762) 評論(1)  編輯  收藏 所屬分類: j2ee

          FeedBack:
          # re: weblogic session問題 [未登錄] 2008-10-27 21:35 leo
          如果兩臺服務(wù)器是在相同的毓下,還會有這樣的問題。  回復(fù)  更多評論
            
          主站蜘蛛池模板: 建德市| 四平市| 永胜县| 正蓝旗| 五莲县| 交城县| 那曲县| 尉氏县| 定西市| 雷山县| 阿拉善右旗| 重庆市| 庆元县| 盐亭县| 萨嘎县| 锡林浩特市| 延长县| 保德县| 丹阳市| 东宁县| 洪雅县| 岳阳县| 鹿邑县| 重庆市| 通海县| 平山县| 靖州| 拉萨市| 饶河县| 永和县| 尖扎县| 独山县| 武宁县| 苗栗县| 大邑县| 廊坊市| 开远市| 兴山县| 邯郸市| 中牟县| 佛坪县|