有没有办法让支柱2(使用砖)将其发送到浏览器之前建立整个页面?我不希望页面中同时浏览器的一个部件打造“渐进”。

我试图解决的主要问题是Internet Explorer 7次/闪烁的页面,即使只有部分内容的变化(Firefox没有这样顺利得多)。

所以,如果我有一个网页:

HEADER

一些内容

FOOTER

和的“一些内容”区域只有页面加载之间变化时,FOOTER部分仍与页脚的背景颜色填充它之前闪烁白色背景。我因子评分,也许通过让支柱发送完整的页面会加载速度不够快,以消除“闪烁”。 现在,FOOTER来自服务器一点点晚于面前的零件,所以它闪烁(在Internet Explorer,Firefox的显示页面平滑)。

NB:这是站点的一项重要要求,以及使用Ajax加载中间含量超出(如同帧或其它“黑客”)。该网站使用的CSS,而不是表布局建造,也许我将不得不使用表格布局,以得到它的工作...

关于使用瓦片冲洗参数: 我想,当我需要它不工作。我需要整个页面的刷新参数。我已经尝试了正常的jsp页面指令“自动刷新=假”,但没有奏效。我设置这个指令我的主模板页面(而不是在砖)。

这是

下面是从主模板,使用报头,主体和页脚模板的例子。随着Thread.sleep()方法我加的问题很容易被发现。页脚呈现比页的其余2秒后。

  <body>
  <div id="container">
  <t:insertAttribute name="header" flush="false" />

  <div id="content"><t:insertAttribute name="body" flush="false"/></div>

  <div class="clear"></div>
  <% Thread.sleep(2000); %>
  <t:insertAttribute name="footer" flush="false" />
  </div>
  </body>

更新

感谢您的意见。要求实际上是几乎合理的,因为这不是一个正常的网页,想嵌入。

但显然没有配置IE启动一些延迟之后呈现的方式(例如Firefox有一些100毫秒的可配置的延迟)?

我试图拦截TilesResult但doExecute是整个内容之前运行的方法显然是评估,因此在jsp进行评估(我的Thread.sleep()方法测试)之前该方法已经退出。我不知道我怎么可能一下子渲染一个字符串,然后输出整个响应浏览器。

我知道,这是不是万无一失和网络延迟等,可以根据这个因素,但如果我能得到输出响应一下子,也许使用基于表格的布局(即只表关闭后可能呈现的表)这可能合理工作。

或者再尝试得到这个切换到Firefox或也许忘记所有关于这个小故障...

UPDATE 2

这开始困扰着我,所以我做了一些调查。 如果我有一个简单的JSP页面(无牌)缓冲作品(与缓冲属性),所以,如果我有我的Thread.sleep()方法有整页两秒后呈现如果页面的大小低于缓冲区大小。 但是,如果我在页面中使用的砖(如上面的例子),我不能让页面在同一时间呈现(我甚至包括在所有我的瓷砖模板/“组件”页面指令,没有帮助)。所以瓷砖可能刷新响应地方?

此外,“有问题的瓷砖”是我的身体部位,其中载有支柱:form标签。我有一个正常的表单标签代替它和它的工作,因为我想...

UPDATE 3

好吧,似乎没有人知道砖的内部运作或Struts标签... 没有什么大问题,因为这是一个非常特殊的情况和要求。 我工作围绕它通过使用Apache作为应用程序的前面proxt,并使用Apache的代理服务器配置选项来指定一个大的缓冲区。 作为回答,我会记住这。

有帮助吗?

解决方案

可以使用“刷新”属性在地砖上的部件?

<tiles:insertAttribute name="body" flush="false"/>

在另外如果输出缓冲器变得太大,就会反正冲洗。尝试增加缓冲器大小?

<%@ page language="java" buffer="500kb" autoFlush="false" %>

其他提示

您可以在服务器端一次性发送页面数据,如果你喜欢(很多框架做,反正为了方便),但网络的现实是,它不会全部到达后,浏览器将呈现为数据包到达。这是为响应一件好事,即使你*外型希望页面同时显示所有。

您可以通过简化的标记和使用deflate压缩,保持有效载荷大小下降低滞后尽可能,这是一般做一个有价值的事情。另外,你可以确保你不打一个Flash无样式内容。但是,当浏览器选择渲染,短与所有需要(即使如此,浏览器可能慢慢重绘)的缺点做这一切在JavaScript中,你无法控制。

(。* - 或者你的客户/老板,如果那是谁想出了这个“重要的要求”,你的网站以某种方式不同的方式工作,以在网络上所有其他网页)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top