Wicket中较短的链接网址

时间:2012-11-28 21:00:51

标签: performance url wicket wicket-1.6

我正在创建一个包含大量链接的应用程序。因为链接包含在表格的单元格中,所以由Wicket生成的URL往往会变长,从而使页面加载速度变慢。

例如:

 <a href="./?0-2.ILinkListener-f-t-body-rows-11-cells-2-cell-li-35-link">2011-06-09 00:00:00.0</a>

我试图找出从哪里开始探索URL的编码/解码,但它是相当复杂的材料。我的第一种方法是只为组件使用“短”名称(如“t”,“f”等)。我可以想象有更好的方法。

我可以想象可以只是为了“编号”链接;因为页面仍然存在,所以我最终会得到这样的结果:

 <a href="./?0-2.ILinkListener-1237">2011-06-09 00:00:00.0</a>

我的问题已经解决了,或者有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:2)

如果Javascript解决方案可以接受,您可以在整个表上使用单个事件侦听器,而不是表中的许多链接。

请参阅此示例获取灵感:

https://github.com/svenmeier/apachecon-wicket/tree/master/src/main/java/eu/apachecon/base/ui/performance

注意Ajax行为如何将动态额外参数传输到服务器。它只查找行。如果你需要区分被点击的表单元,你将不得不扩展这个想法。

答案 1 :(得分:0)

Sven提出的解决方案是更好的解决方案。

这是一个你可以称之为基础的解决方案:注册你自己的根IRequestMapper,它将通过真正的映射器压缩/解压缩生成的url。有关自定义根映射器的示例,请参阅CryptoMapper和HttpsMapper。