設定ear中war之間session共享

xz43發表於2014-03-21

Web規範中規定每個Web應用的Session資訊彼此是不能共享的,但是在開發Web應用時,有時我們希望多個Web應用之間可以共享Session資訊。
但是現在大部分J2EE伺服器,都實現了EAR中war之間的session共享,如weblogic(>=9)、websphere。
因此,我們可以把多個war打到一個EAR裡面,來實現war直接的Session共享。

設定weblogic的EAR中war之間session共享有下面兩種方法:

1:設定EAR中的weblogic-application.xml檔案,加入如下片段:

   
  memory
  true
 

 
整個weblogic-application.xml內容如下:

http://www.bea.com/ns/weblogic/90" xmlns:xsi="" xsi:schemaLocation=" http://www.bea.com/ns/weblogic/90 http://www.bea.com/ns/weblogic/90/weblogic-web-app.xsd">
    10.0
    testEARweb2
   
  memory
  true
 

2.設定需要共享session的war內的weblogic.xml檔案,例如testEAR內有兩個war,testEARweb1和testEARweb2,想讓這兩個war之間session共享,
則需要設定這兩個war裡面的weblogic.xml檔案,同樣,加入下面片段即可:
   
  memory
  true
 

設定後testEARweb1的weblogic.xml內容如下:


http://www.bea.com/ns/weblogic/90" xmlns:xsi="" xsi:schemaLocation=" http://www.bea.com/ns/weblogic/90 http://www.bea.com/ns/weblogic/90/weblogic-web-app.xsd">
    10.0
    testEARweb1
   
  memory
  true
 


 
testEARweb2的weblogic.xml內容如下: 

http://www.bea.com/ns/weblogic/90" xmlns:xsi="" xsi:schemaLocation=" http://www.bea.com/ns/weblogic/90 http://www.bea.com/ns/weblogic/90/weblogic-web-app.xsd">
    10.0
    testEARweb2
   
  memory
  true
 

這樣,EAR內的war之間就可以共享session了。

對於WAS,需要設定ibm-application-ext.xmi檔案,

 

其中sharedSessionContext="true",就是說明要開啟共享session。

可以參考:http://maping930883.blogspot.jp/2009/03/wls056earwebsession.html

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9399028/viewspace-1126886/,如需轉載,請註明出處,否則將追究法律責任。

相關文章