我是检票口的初学者, 我做了一个jsp代码迁移到检票口, 我正在实现与读取和显示日志文件相同的方法, 当然,在表示层中,我使用检票口组件。 问题是 : 用jsp代码我没有超时的问题 如果文件较大,使用wicket时,页面加载将太长,直到浏览器崩溃为止。 有没有办法解决这个问题
答案 0 :(得分:0)
我猜在JSP中您使用的是类似<%@page buffer="xxxkb" autoFlush="true" %>
的东西,因此在开始将其发送到浏览器之前,它不会构造完整的响应。
在Wicket中,如果您构建一个Page,则应组装整个Page,然后在该页面中写入响应。
所以这可能就是您看到使用JSP解决方案呈现的内容的原因。但是,如果内容太大(即日志文件太大),我希望浏览器也会对JSP解决方案产生问题,除非您卸载旧内容(如虚拟滚动网格一样)。
要在Wicket中完成相同的操作,可以使用已装载的资源而不是页面。这样,您将控制何时刷新生成的响应。但是正如我上面所说,最好考虑一种解决方案:首先呈现页面框架,然后使用Ajax / WebSocket逐部分加载文件内容。这样,当您加载第N个部件时,您可能会开始删除最旧的部件以在浏览器中卸载DOM渲染器。