2016-11-03 6 views
0

websphereアプリケーションサーバ(ネットワークデプロイメント)にデプロイされているmobilefirst 7.1アプリケーションで作業しています。このアプリケーションは、すべてがうまくいきます。モバイル先サーバ/ WebsphereアプリケーションサーバのアダプタとJavaクラス(サーブレット)間でセッションが永続しない

アダプター内のセッションで属性を設定し、アプリケーションの一部であるjavaクラス(サーブレット)から属性にアクセスし、web.xmlファイルの設定を使用してサーブレットとして公開しようとしています。

私のWorkLightのプロパティの設定:

mfp.session.independent=false 
mfp.attrStore.type=HttpSession 

マイアダプターコード:

function myProcedure(XXX){ 
    WL.Server.getClientRequest().getSession().setAttribute("myAtrrib", XXX); 
    return { result :"Success"}; 
} 

Javaサーブレットコード:私は、この属性にアクセスしようとすると、

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
     String crdAcc = (String) request.getSession(true).getAttribute("myAtrrib"); 
} 

だから問題はここにあること私に与えてヌル

私はセッションの詳細をチェックすると、そのセッションは新しいセッションであることがわかりました。

mobilefirstアダプタで使用されているのと同じものを使用するのではなく、このサーブレット呼び出しでサーバーが新しいセッションを作成している理由がわかりません。 Worklight 6.1でも同様のコードが使用されています。

答えて

0

以前の質問では、クラスタ上にあると言われていました。そのため、サーバーやロードバランサでスティッキセッション構成を有効にしていない可能性がありますか?これは「新しい接続」が起こっていて、値が利用できないことを説明するかもしれません。

+0

これを確認するには、サーバーの1台を停止し、1台のサーバーでのみテストしました。それは動作していないにもかかわらず。セッションデータはアダプタから設定されますが、セッションからは別のアダプタからアクセスできますが、Javaクラス(サーブレット)からはアクセスできません。 – John

+0

IBM SupportチームのPMRを開いて見てみましょう。 –

+0

PMRを上げました。 – John

関連する問題