我有一个执行选择操作的jsp页面,然后需要显示很多数据。加载可能需要一分钟左右的时间。我遇到的问题是,如果另一个用户尝试访问该页面,他们只会得到一个旋转的浏览器,直到第一个用户的页面完成为止。我可以在下面的测试页上复制
页面为:
<%@ page isThreadSafe="false" import="java.util.*" errorPage="error2.jsp" %>
<html>
<head>
<title>Test page</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<center>
<%
for (int i = 1;i <= 10000; i++) { %>
line <%=i%> <%=new Date()%><br>
<% for (int j = 1;j <= 900000; j++) {
}
}
%>
</center>
</body>
</html>
当我同时在两个浏览器上转到此页面时,两者都开始旋转,一个将开始显示“第1行...”数据,另一个将继续旋转,直到第一个显示“第1行”。 10000 ...”,然后第二个浏览器将开始显示。
在第一个浏览器中显示的第一行和最后一行是:
1号线,2019年1月16日星期三15:35:25
10000行,2019年1月16日星期三15:35:39
,第二个浏览器中显示的第一行和最后一行是:
1号线,2019年1月16日星期三15:35:39
10000行,2019年1月16日星期三15:35:53
在独立模式下,我已经能够在JBoss 7和Wildfly 9中复制它。
standalone.xml中是否需要设置一些设置,以便两个JBoss / Wildfly可以同时生成同一页面的两个或多个实例?
答案 0 :(得分:0)
它看起来像是“ isThreadSafe”页面指令属性。当我将其从false更改为true时,页面会同时显示在多个浏览器中。