关于Wicket的三个问题

我以前用过webwork和sturts,这种基于请求的框架在界面开发上的问题挺多,但是至少还比较成熟,期间也实验过Tapestry和Echo2,感觉Tapestry的体系太乱了,好好一个项目,让开发组搞的乱七八糟,而Echo2的builder用起来很不错,只是收费和session管理的问题觉得不太好,另外就是Echo2的体系太封闭,不容易集成spring和osgi,虽然努力努力也能做到,但毕竟感觉不好。
最近看了版主的wicket开发指南,并实验了一下wicket的例子,觉得wicket是个很有前途的框架,个人觉得真的解决了java web界面开发的大问题。

不过有以下几个问题想请教一下版主:

1、wicket将组件缓冲在session中会不会影响性能?或者导致app server crash?
这点我觉得是个很严重的问题,因为session在server端都是存储在server的JVM进程空间里的,这样长期运行会不会导致server outmemery?楼主遇到过这种情况没有?

2、wicket的性能如何?
用在web站点上首先要关心的就是性能问题了,其他的web框架都可以通过SNA架构来提供简单无限制的集群,而wicket的集群是基于session复制的,不知道性能如何,有没有这方面成功的经验?
或者可以使用apache的striky session来将session限制在单个tomcat上?我在wicket的wiki上没看到类似的说明,理论上应该是可行的,不知道楼主有没有看到过相应的资料?
在大型网站上,一般都不使用session来存储信息,而使用cookie或者是url stricky这两种方法来存储session id,后台使用分布式的cache或者内存数据库做为cache来存储session信息,不知道在wicket中,我是不是可以通过更改一些组件来做到这点?

3、apache的集成问题
在使用apache和servlet容器集成的时候,一般都是按照扩展名来配置转发,比如将资源扩展名为jsp、action、do这样的url访问转发到某个servlet容器上,但是使用了wicket之后,在wicket应用中都是html页面,我看到wicket生成的url也比较灵活,有/people/find/这种目前比较流行的url,也有/wicket?xxx这种url,可是这两种url的扩展名都不固定,在apache里怎么配置转发呢?
wicket的wiki上给出的apache集成方案中,使用了web虚拟机配置,将某个地址的访问全部转发给servlet容器,这样做的问题是如果我的java的应用中有一部分是纯静态html页面,想通过apache来访问这些文件以便提高性能,这种配置方法就不能满足要求了。

最后,真诚的感谢版主介绍了wicket这么好的框架给中国的开发人员,期待版主更多的作品


因为你的问题比较复杂
所以我没有办法在一个简单的帖子里描述清楚
下周我会抽出时间专门写一些文章回答其中的问题

下面是一个简单的回答
1、Wicket的Session是通过ISessionStore来处理的,你可以实现这个接口提供自己的Session处理,也可以编写一种类似于JSP的无状态页面节省内存。
2、至于性能,象Cookie,Wicket也是支持的,而且可以很容易的封装,而Wicket2.0会支持ASP.Net的ViewState方式,即通过隐藏域来传递信息,不知道Wicket1.3是否会支持这种方式。
3、配置转发是属于Servlet规范中的,其实与Apache关系并不大,Apache只能提高静态页面的访问性能。


 呵呵,多谢版主回复,不知道wicket2.0什么时候release啊?
如果能够做到ASP.NET那样,那就省事多了
ISessionStore我在你的文档中看到了,还要多学习^_^

关于第三点,可能我表达的不是很清楚,url转发应该不是servlet的问题吧,apache在前面,必须配置它将相应的url访问转发给Tomcat,一般来说都是Apache的JKMount或ajp来配置,所以我的意思能不能让wicket的url有个明显的标识,好在apache里配置转发,不知道版主和我说的是不是一个事情?或者我理解的有问题?

期待版主的详细的文档,呵呵


Wicket2.0与1.X变化太大,所以顺利的话也要在今年6-7月份吧!毕竟小组的人才是有限,我自己也是做开源软件的,但是有公事的时候,只好把自己的东西放一边了!

2.0看起来真的很象ASP.NET,但是使用Session,还是ViewState,在Wicket邮件组的争论也是比较多,我个人也是犹豫不决,这个还是要具体分析,不同环境下还是有所区别的。

第三点是我理解错了,我以为你说的是WEB-INF中的URL定义呢?我对Apache不太熟悉,这些内容可能需要你去研究了,如果有了心得,千万要告诉我一声啊!

如果有其它的心得或者问题,希望同样与我们分享。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目录 1.简介 2.如何使用示例代码 3.我为什么要学习Wicket? 3.1。我们都喜欢意大利面:-) ... 3.2。面向组件的框架 - 概述 3.3。面向组件的Web开发框架的优点 3.4。Wicket与其他面向组件的框架相比 威克特说“你好世界!” 4.1。Wicket分发和模块 4.2。Wicket应用程序的配置 4.3。HomePage类 4.4。Wicket链接 4.5。摘要 5. Wicket作为页面布局管理器 5.1。页眉,页脚,左侧菜单,内容等... 5.2。这是继承! 5.3。划分et impera! 5.4。使用wicket标记继承:扩展标记 5.5。摘要 6.保持对HTML的控制 6.1。隐藏或禁用组件 6.2。修改标签属性 6.3。生成标记属性“id” 6.4。使用WebMarkupContainer创建内嵌面板 6.5。使用标记片段 6.6。将标题内容添加到最终页面 6.7。在我们的页面/面板中使用存根标记 6.8。如何仅渲染组件主体 6.9。用wicket隐藏装饰元素:enclosure标签 6.10。使用Border包围现有标记 6.11。摘要 7.组件生命周期 7.1。组件的生命周期阶段 7.2。组件生命周期的钩子方法 7.3。初始化阶段 7.4。渲染阶段 7.5。删除阶段 7.6。独立舞台 7.7。摘要 8.页面版本控制和缓存 8.1。有状态页面与无状态页面 8.2。有状态页面 8.3。无状态页面 8.4。摘要 9.在请求处理的引擎盖下 9.1。类应用和请求处理 9.2。请求和响应类 9.3。请求处理的“主管” - RequestCycle 9.4。会话类 9.5。异常处理 9.6。摘要 10. Wicket链接和URL生成 10.1。PageParameters 10.2。可收藏的链接 10.3。使用标记wicket自动创建可收藏的链接:链接 10.4。外部链接 10.5。无状态链接 10.6。生成结构清晰的URL 10.7。摘要 11. Wicket模型和表格 11.1。什么是模特? 11.2。IModel和Lambda 11.3。模型和JavaBeans 11.4。Wicket形式 11.5。组件DropDownChoice 11.6。模型链 11.7。可拆卸型号 11.8。在组件中使用多个模型 11.9。使用型号! 11.10。摘要 12. Wicket详细说明 12.1。默认表单处理 12.2。表单验证和反馈消息 12.3。输入值转换 12.4。使用JSR 303验证 12.5。使用IFormSubmittingComponent提交表单 12.6。嵌套表格 12.7。多行文字输入 12.8。上传文件 12.9。使用FormComponentPanel创建复杂的表单组件 12.10。无国籍形式 12.11。使用单选按钮和复选框 12.12。使用ListMultipleChoices和Palette选择多个值 12.13。摘要 13.使用中继器显示多个项目 13.1。RepeatingView组件 13.2。ListView组件 13.3。RefreshingView组件 13.4。可分页的中继器 13.5。摘要 14.组件排队 14.1。标记层次结构和代码 14.2。改进了汽车组件 14.3。组件什么时候出列? 14.4。排队的限制 14.5。摘要 15.与Wicket的国际化 15.1。本土化 15.2。Wicket的本地化 15.3。捆绑查找算法 15.4。组件选择的本地化 15.5。国际化和模型 15.6。摘要 16. Wicket的资源管理 16.1。静态与动态资源 16.2。资源参考 16.3。包资源 16.4。向页眉部分添加资源 16.5。上下文相关资源 16.6。资源依赖性 16.7。使用资源包聚合多个资源 16.8。将JavaScript放在页面正文中 16.9。标题贡献者定位 16.10。自定义资源 16.11。安装资源 16.12。Lambda支持 16.13。共享资源 16.14。自定义资源加载 16.15。CssHeaderItem和JavaScriptHeaderItem压缩 16.16。NIO资源 16.17。资源通过模型得出 16.18。摘要 17.与JavaScript集成的示例 17.1。我们想做什么...... 17.2。......以及我们将如何做到这一点 17.3。摘要 18. Wicket高级主题 18.1。通过行为丰富组件 19.使用AJAX 19.1。如何使用AJAX组件和行为 19.2。内置AJAX组件 19.3。内置的AJAX行为 19.4。使用活动指示器 19.5。AJAX请求属性和调用侦听器 19.6。创建自定义AJAX调用侦
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值