我在下面使用 App2 中的 App1 来访问会话数据。
App1中的ServletContext sctx = ((HttpServletRequest) request).getSession().getServletContext();
String testStr = (String) sctx.getAttribute("attr");
if(testStr == null){
testStr = "test";
sctx.setAttribute("attr", testStr);
}
App2中的我得到的会话值如下。
ServletContext sctx = ((HttpServletRequest) request).getSession().getServletContext().getContext("/app1");
String testStr = (String) sctx.getAttribute("attr");
System.out.println("the value which set in first app: " + testStr);
实际上是我的App2 will be in cluster environment
。在这种情况下, App1 还会在群集环境中吗?
我的App2是一个Web应用程序,它暴露的Web服务很少,并且不包含任何UI。 App1和App2之间不得有任何直接通信。 App1必须在启动时在Application范围中放置一些值,之后App2应该在需要时访问应用程序作用域值。感谢名单
群集环境中是否有任何问题?我的方法是否正确?
谢谢!
答案 0 :(得分:0)
如果:
然后,您的会话属性应该可以在所有服务器上使用。