最权威的书是tapestry In Action,但初学者上手困难,另一本很好的是Enjoying Web Development with Tapestry,非常的棒,由浅入深,可惜目前无法找全这本书,http://www.itpub.net/390564.html有前4章。下定决心写我自己的学习笔记。
每一个tapestry应用都要有一个Home page,当tapestry接收第一个request时,就会查找Home.page,这是他的总入口。因为tapestry的URL对于人可读性极差(3.1将改变这种情况),如:http://localhost:8080/HelloWorld/app?service=page/Home,如果访问具体页面在page后面指定即可,如有个AddItem页面一定要真实存在AddItem.html,只需/app?service=page/AddItem。就这么个浅显的问题在InAction中居然没有介绍,害的我找了两天呀,最后还是在Enjoying中清楚的写着呀,真是本好书呀!
tomcat5.0.28中把类包放到shared/lib下是不行的,找不类,在Engoying书中就是这样用的,版本是tomcat-5.5.7!应用程序的路径不在tomcat目录下这样使用,有待一试!
在页面对应的类文件中,定义抽象方法,就要在.page配置文件中定义,告诉tapestry负责管理这个属性,例如:
public abstract void setDvd(DVD dvd);
public abstract DVD getDvd();
<property-specificationname="dvd" type="com.sandcast.examples.tapestry.crud.bo.DVD"/>
事件驱动,在类中定义listener必须满足这个格式:
public void methodName(IRequestCycle cycle) {}
Global类是在框架内可以调用保存在context范围内的,如果用得到要求自己实现这个类,名字可以任意命名,但要在servletName.application配置文件中定义:
<property name="org.apache.tapestry.global-class" value="com.sandcast.examples.tapestry.Global"/>
posted on 2008-10-04 23:52
Blog of JoJo 阅读(195)
评论(0) 编辑 收藏 所属分类:
Programming 相关