我们刚从GWT移到Wicket 1.4。虽然总体上非常高兴,但对于GWT变得简单的某些事情,我们仍然有一些学习曲线。其中一件事就是资源缓存。Wicket:正确缓存CSS资源
如何配置我们应用程序的资源(特别是CSS),以便它们不会随每个页面请求一起下载?
我们发现某些页面元素有些闪烁,因为样式不是立即应用的,大概是因为每次都下载样式表。我追踪了我们的日志,事实上,几乎每个页面请求都会看到样式表的请求。
我们直接引用CSS在我们的HTML文件,像这样:
<link href="/css/ag.screen.css" rel="stylesheet" type="text/css">
<link href="/css/ag.base.css" rel="stylesheet" type="text/css">
我不知道它的问题,但我们的所有页面都装有IndexedParamUrlCodingStrategy
,因为我们需要他们两个可收藏并具有特定的URL结构。
我试着实现StefanFußenegger在他的blog(即通过头文件引用而不是直接在HTML中引用CSS)的建议,但这似乎没有帮助(我试着用“curl -I “)。
有没有为Wicket 1.4中的资源设置Cache-Control或Expiration标题的标准方式?这是值得转移到Wicket 1.5吗? (我很犹豫,因为它尚未正式发布)。
编辑:我刚刚给了1.5次另一个尝试,但缺乏文档在这一点上确实是一个障碍。 IndexedParamUrlCodingStrategy
和相关的课程已经没有了,移植指南几乎没有什么可说的。
编辑2:我刚刚注意到一些非常奇怪的事情 - 当我通过直接输入URL或单击书签页链接(页面引用的资源(CSS,图像等))到达我的某个页面时,似乎得到缓存(我看不到他们在我的日志中的请求)。但是,如果我通过表单提交到达同一页面,则所有资源都会再次下载。为什么表单提交会导致页面上引用的资源被重新下载?
只是好奇,是什么让你从GWT移动到Wicket? – 2011-05-26 00:00:43
亚历克斯 - 一长串事情。最近的一些(我的头顶)是让Facebook/Twitter按钮工作,整合Adsense,试图获取谷歌索引的Ajax内容,以及为新的GWT“编辑器”框架而努力的问题。事实证明,在“传统”框架中编写应用程序要简单得多,然后根据需要为交互式内容编写小量的Javascript。多年来我一直是GWT的粉丝,所以这对我来说并不轻微。计划很快写一篇博客文章。 – 2011-05-26 03:38:40
有趣。我使用Wicket几年,但最终偏向GWT。 Wicket棒极了,但它并没有像我希望的那样获得太多的认可 - 这意味着很难让人们熟悉它。无论如何,我希望在编写它时看到您的博客条目。请让我知道。谢谢。 – 2011-05-26 04:59:11