2013-10-16 39 views
-1

我正在使用pdk jdeveloper portlet。如何在java中使用跨域cookie或會話

我已經部署耳Tomcat服務器上與主機www.test1.com:8080/

現在即時通訊使用它與同一主機,但像www.test1.com:9090/

所以這裏不同的端口Oracle服務器上提供即時通訊不能上使用cookie或會話的事www.test1.com:9090/

我一直在使用如下的JavaScript設置cookie的:

function setCookie(c_name,value,exdays) 
{ 
    var exdate=new Date(); 
    exdate.setDate(exdate.getDate() + exdays); 
    var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString()); 
    document.cookie=c_name + "=" + c_value; 
} 

setCookie("USER","test",365); 

現在試圖在portlet頁面上獲取此cookie,如下所示。

PortletRenderRequest pReq = (PortletRenderRequest) 
    request.getAttribute(HttpCommonConstants.PORTLET_RENDER_REQUEST); 
    try 1: Cookie[] cookies =request.getCookies(); // get null 
    try 2: Cookie[] cookies = (Cookie[])pReq.getCookies(); // get null 

我該如何做到這一點?請幫忙。

回答

0

你必須在cookie上設置一個域。 link,這給你一個很好的開始。我閱讀了這篇文章,發現它很容易跨子域共享cookie,但很難在不同的域中共享。這也將是有用的link