2009-06-03 5 views
3

私はjsr 186ポートレットを実装しており、いくつかのサーブレットをいくつかのajaxを実装するために組み合わせて使用​​しています。問題は、AJAXの呼び出しをしばらく行うだけでセッションが失われることです。不思議なことに、サーブレット・セッションを有効にしても、ポートレット・セッションのタイムアウトが妨げられることはありません。ポートレット - サーバー側からセッションを維持する

サーブレット内のサーバー側でセッションを有効にする方法はありますか?

FWIW私は春と春のmvc/portletを使用しています。

おかげで、 ミゲルのPing

答えて

0

は私がポーリングにポートレットURLを保ったjavascriptのタイマーを使用してそれを実装しました。ポートレットのURLはbeforehadnで生成されたので、javascriptでアクセス可能でした。

1

私は同じ問題を抱えていました。 (OpenPortalポートレット・コンテナの使用)

知っているように、1つのポートレット・セッション、2つのコンテナ・セッションという2つの異なるセッションがあります。

単純なポートレットを作成し、定期的にコンテナからajaxを使用してポートレットにリクエストしました。ただし、セッションがタイムアウトします。私のコードの一部はここにある:

<% 
    int per=15000; //ms 
    String sessionExtenderPath = "http://portal.abc.com.tr:8080/SessionExtend/SessionExtend"; 
    //This is a portlet which includes servlet that returns a simple string. 
%> 

<script> 
    periyod=100; 

    function invokeRequest(){ 
    $.get("< %=sessionExtenderPath% >", function(data) { 
     alert(1); 
    }); 
    } 
    window.setInterval("invokeRequest()",periyod); 
</script> 

私は(ポートレット用のチャネルを定義するwihout)コンテナページを要求することにより、私の問題を解決しました。

編集ありがとうございます。

関連する問題