Tapestry4.1.x中内置dojo实现ajax功能,不用写任何的javascript就可以实现, 具体步骤如下。 1、用Shell组件包含进dojo,Shell组件会自动配置dojo包。 <html jwcid="@Shell" title="Basic Ajax Page"> <body jwcid="@Body"> <p>Basic javascript inclusion sample.</p> </body> </html> 2、使用updateComponents参数 这个参数已经在很多组件里实现,加上这个参数就可以实 ...
注入方式: @InjectObject("service:tapestry.globals.HttpServletResponse") public abstract HttpServletResponse getServletResponse(); service一览: tapestry.globals.HttpServletRequest tapestry.globals.HttpServletResponse tapestry.globals.ServletContext tapestry.globals.ApplicationGlobals tapestry.globals.IReq ...
2007-06-27

新版Tapestry4.1.2在性能上的提升

关键字: Tapestry4.1.2 性能
一、ognl2.7带来的性能上的提升 这个版本应该早就该释出的,一直在等ognl2.7版本的稳定,不过这也是值得的,ognl2.7带来性能上的提升是可观的。在Tapestry4.1.2投票的时候就测试出跟Tapestry-prop不兼容,但ognl采用了跟prop一样的javassist增强来实现,应该说ognl在性能上跟prop差不了多少了(没实际测试,只是从理论上来说),而且ognl提供了更多的功能,Tapestry4.1.x版本的prop可以放弃了(T5中已经默认为prop了,那个prop跟T4的不一样,题外话),关于prop跟ognl老版本的性能测试可以参考这里(http://tape ...
2006-12-30

深入理解Tapestry的Rewind

关键字: tapestry rewind
Tapestry的rewind一直是学习和使用Tapestry的难点,rewind是用来处理表单提交的,表单默认使用的是DirectService来提交。在详细介绍之前,先说明下此文中需要用到的一些概念,首先是表单组件,我这里指的是指继承自AbstractFormComponent类的组件,例如:TextField、TextArea、Checkbox等,而不是具体的Form组件,表单组件使用时必须在Form组件中,这些组件在rewind时调用继承自AbstractFormComponent的rewindFormComponent来读取数据,并将数据赋值给容器或者页面。 我们来看一下最简单的Te ...
     Tapestry中构建选择列表需要使用IPropertySelectionModel,Model可以映射选择列表中的Label和Option,Tapestry中已经提供一个常用的StringSelectonModel,具体组件使用如下: Html代码   Java代码 java 代码   public abstract class DetailsPage extends BasePage {   &nb ...
Tapestry中表单的提交有很多问题,刷新导致表单的重复提交、臭名昭著的dirty form warning、显示不友好的URL等,这些都可以使用redirect-after-post模式来避免,也就是post表单之后将页面redirect一下,这样地址栏显示的就是redirect之后的页面,刷新的也将是这个页面,而且redirect之后的页面一般为Page页面,可以使用friendlyUrl来显示友好的url。 要使用这个模式,不得不提到一个ILink接口,T4中可接受的listener方法中一个方法签名是这样的: java 代码 public ILink  ...
Tapestry4.0.x版本的PagePool实现很简单,只是使用一个map容器作为缓存,高并发的情况下容易导致OutOfMemoryException,下面是邮件列表中的相关内容,里边也提到了相关建议,估计会作为一个bug修改,在未修改之前,我会给出一个简单实现。 PagePool doesnt remove idle pages, heap memory doens't get reallocated > ---------------------------------------------------------------------- > > K ...
2006-11-18

在Tapestry4中使用SWFUpload上传文件

关键字: Tapestry SWFUpload 文件上传
Tapestry4中上传文件的组件对文件的处理做了很好的封装,用户界面最常用的还是普通Form中的<input type="file">,最近看了SWFUpload(http://labb.dev.mammon.se/swfupload/)组件,感觉不错,界面可以设计的很友好,定制性很强,而且提供了javascript回调接口,可以很好的跟踪文件上传的各种事件。SWFUpload给出的例子中,只是给出php的后台实现,下面给出在Tapestry4中的实现。 第一步:下载并修改SWFUpload     &nbs ...