管理不同服务器上的会话,并重新使用jsp包含页面到主页面的参数

时间:2012-03-22 10:21:23

标签: java jsp

两个问题与Jsp有关。

1个会话从一个服务器维护到另一个服务器。

如何在jsp文件的会话中设置值,以便我在其他服务器上获得相同的值?

2如果我想使用包含jsp的声明参数到主jsp页面那么如何?

参考此

one.jsp
---------------
   ...
   <%
     String xyz='xyz';
   %>
   ...



two.jsp
---------------
   ...
   <jsp:include file="one.jsp"/>
   <%
    String zbc = xyz;   //can i use this ?
   %>
   ...

2 个答案:

答案 0 :(得分:0)

回答第二个问题 - 好吧,我认为你会得到编译时错误,因为jsp:include是在运行时评估的。所以变量xyz不适用于two.jsp。

您可以做的是将数据存储在one.jsp中的javascript变量中,然后在页面加载时从two.jsp访问它。


我没有完全理解你的第一个问题。 会话在服务器上很常见,因此所有服务器都可以访问存储在其中的任何内容。

您可以使用以下代码从jsp将属性存储到会话。

<%= session.setAttribute("xyz", xyz) %>

答案 1 :(得分:0)

如果您正在提供这种功能的平台上工作,那么这是可能的。 此链接将为您提供有关glassfish platform

中的会话复制的提示

如果您的服务器不属于群集,我认为您可以在服务器前使用负载均衡器,此元素会将客户端流量始终重定向到同一服务器,因此您无需复制会话在节点上。

如果这不能满足您的需求,您可以使用外部元素(如BD共享缓存文件等)存储会话。

希望得到这个帮助。