论坛首页 Java企业应用论坛

Tapestry 和 JSP/Taglib 的比较

浏览 29486 次
该帖已经被评为精华帖
作者 正文
   发表时间:2004-04-15  
呵呵,我明白的你的意思了,你的绑定实际上是由foreach组件自己完成的.如果组件足够多足够好用,当然没有问题.但是这会导致你的oo和form结合过紧,有时候又不得不增加额外的处理.对应于taglib,如果有足够好的taglib,同样可以达到相同的目的.
至于lisenter,struts也有对应的处理方式,不过没有lisenter这么直观,但在某些情况下,lisenter会互相干扰.
service的使用方式和用不用tapstrey没有关系.
类增强是个好东西,但在两个位置(类里面定义抽象方法,page里面定义属性)描述同一对象会有同步问题,有ide就好了.
Spindle早就用了,还不够好,而且最近不更新了.我希望的是一个能够自动同步的编辑器,但估计是个梦想.
1,Tapestry的组件还不足够丰富,
2,Tapestry的最佳实践还不够.
举个简单例子:一个页面需要弹出一个选择页面,在弹出页面选择一些数据返回.
对于希望使用Tapestry的同仁,我的意见是不要盲目在项目中使用,仔细评估你的项目的重要性.我们的个项目本身就是一个demo演示给客户看的.
0 请登录后投票
   发表时间:2004-05-10  
install/update perspective --> new site bookmark -->
http://spindle.sourceforge.net/updates
0 请登录后投票
   发表时间:2004-06-15  
去年接触了优秀的脚本语言python,从而了解了它同样优秀的应用服务器zope。
在它的表现层中,有类似taglib的东东。较新版本出现了叫做page template的东东(简称zpt),与tapestry极为相象。我不能确定这个思路是tapestry还是zpt或其它产品最早提出的(w3c规范的的xml shadow tree也有几分相象,类似的还有m$的IE客户端的htc...)。总之我最早认识了zpt,并试图找它的java实现,毕竟这是个十分简单优雅的方案。由于目光局限,只发现sourceforge的javazpt(符合zpt的java实现),这是个十分不活跃的项目,现在想起来可能因为有tapestry吧。

后来不自量力曾试图写一个这种东东:参照zpt和python语法定义BNF,用javacc生成的解释器进行语法分析。用ServletMapping进行映射。用apache的一个兼容xml的html解析器(名字忘了)进行转化。做预编译加快速度(可设置debug级别为debug或deploy,debug级别可进行热布署)。做成插件式的,通过注册namespace进行转换器的映射。......
想法倒不少,甚至编码都进行一部分了。发现tapestry后,我很高兴可以over掉这个试验品了。虽然对tapestry了解还很少,但它绝对是我想要的。也发现有些地方并不是预想的那样,但可以期待它的后续版本。

可惜的在china-pub上搜关于hibernate,spring,tapestry的书,好象一本都没有。各位专家为什么不考虑整合一下人马,把电子版的文章出版成书面的呢。希望不会有技术断层象我们的社会断层一样。
现在上网只能在网吧,所以才感叹印在纸上的书最实在。。。
0 请登录后投票
   发表时间:2004-06-15  
zpt和tapestry有好多方面值得互相学习。
下面是zpt的一个简单的例子:
<td tal:content="request/name">xx</td>
这样xx就被request中的name值取代了。

杜文山是zope方面的活跃人士,这是他免费的中文资料:
http://book.dohao.net/book/issue01/content/26.html
zpt官方文档在:
http://www.zope.org/Documentation/Books/ZopeBook/2_6Edition/AppendixC.stx
0 请登录后投票
   发表时间:2004-06-20  
tapestry in action
0 请登录后投票
   发表时间:2004-06-20  
liusong1111 写道
可惜的在china-pub上搜关于hibernate,spring,tapestry的书,好象一本都没有。各位专家为什么不考虑整合一下人马,把电子版的文章出版成书面的呢。

这些电子书虽然在很多网站可以免费下载,但是一般都是有版权的(即使翻译,也要获得原作者的允许)。我们这里不鼓励免费交流有版权的电子书,如果贴出来会被马上删除的。

翻译工作你没有亲自做过,不清楚里面的辛苦,这里的一些朋友比如 gigix、曹晓钢、robbin 都很清楚。我多年前曾经翻译过 Struts 使用指南放在网上,自以为翻译的“信”至少还是做到了,但是后来遭到两位读者发来邮件痛骂(骂得我好象连小学语文都没有过关似的),所以觉得翻译实在是吃力不讨好的工作,于是就不再从事这方面的工作。张恂说现在存在一帮“IT 文学青年”,我觉得这个比喻很恰当,不过我是当作中性词而不是此公所含的贬义。你可以把这里当作一个自助式的文学沙龙,我们都是文学青年,我们来这里是为了交流自己的作品,而不是免费获得别人的劳动成果。你现在的心态还是消极等待的心态。如果你认为这里确实是一个很好的社区,你应该采取更加积极参与的态度,贡献出你的力量让这里变的更好。这里没有自命不凡的“高手”,大家都有工作,平时都很忙,还要承受巨大的生活压力,但是只要每个人都采取更积极的态度,付出一点点贡献,假以时日,所有来这里的朋友都会得到很大的提高。但是如果所有的人都采取消极等待的态度,那么这个社区消亡的日子就可以预期了。

这里会员原创的一些精品文章,我们在将来适当的时机会组织出版的。但是一定要时机成熟并且可以获得足够的商业回报。我们并不鼓励会员学雷锋无私奉献,这样的书如果出版了我们一定要给文章的作者相应的回报的。
0 请登录后投票
   发表时间:2004-06-27  
确实,现在我的心态很不平和(从上面的贴子可以看得出),自我激励自我反省的时间很少,常会颓唐。
有空拜读一下大家的东西,感觉很好。
当然如果能出力时也会争先的。

现在看起来,有一点我还能坚持,就是有精力的同志可以参看一个zpt,来对tapestry有更好的评估和掌握。
0 请登录后投票
   发表时间:2004-08-21  
Quake Wang说得不错。
原来一直用hibernate+spring+struts.struts一只让我感觉不太爽,我准备抛弃struts,转向tpestry,最近一个项目的前期技术准备工作已经做完.
终于在整个架构中可以彻底的贯彻面向对象的思想,应用重构技术。
0 请登录后投票
   发表时间:2004-08-21  
庄表伟 写道
提个建议,这个话题看看能不能扩展。大家就自己知道的表现层框架,给出同样这个问题的不同答案。好好的比较一下。


响应,我就谈谈velocity吧
个人感觉velocity挺好的,又简单。既然tapestry还没有最佳实践,那就试试velocity吧
比如楼主那个例子,用velocity这么写:

<html>
<body>
   <table border=1>
      <tr>
     <td>name</td><td>link</td>
     </tr>
     <!--
     #foreach ($user in $userList);
    -->
     <tr>
        <td>$user.userName</td><td><a href=update.do?id=$user.userId>update</a></td>
     </tr>
     <!--
     #end
     -->
   <table>
</body>
</html>

其中velocity代码我用<!---->括起来了,因为这样在ie中就看不到这些代码了,保持跟实际一样的效果
大家可以用dreamweaver和ie打开看看,非常清晰,跟实际效果一模一样
用tapestry的话,你需要改变你web的编写方式,风险相对要大。而用velocity的话,你只需要把你的jsp改为velocity就可以了
0 请登录后投票
   发表时间:2004-08-25  
Introduce one new but it's oldest tech in Web application field.
WebObjects, I think it's best in this world.

1 
2 <html> 
3 <body> 
4 <table border=1> 
5 <tr> 
6 <td>name</td><td>link</td> 
7 </tr> 
8 <WEBOBJECT NAME=UserRepetition>
9  <tr><td><WEBOBJECT  NAME=UserName></WEBOBJECT></td>
10      <td><WEBOBJECT  NAME=DeleteBtn></WEBOBJECT><WEBOBJECT  NAME=UpDateBtn></WEBOBJECT></td>
11  </tr>
12   </WEBOBJECT NAME=UserRepetition>
13  <table>
14 </body>
15  </html>
16 
17  
18  
19  
20 
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics