页面类和页面事件 Tapestry框架是基于事件触发机制。当满足某些事件的触发条件时,Tapestry就会触发事件所对应的页面类中的方法。 页面类
代码
代码
通常情况下,页面类都继承于org.apache.tapestry.html.BasePage类,而BasePage类继承于org.apache.tapestry.AbstractPage类。BasePage类为我们提供了一个public ContentType getResponseContentType()方法,该方法返回用于响应的上下文类型。其实,我们完全可以直接让页面类继承于AbstractPage类。 假如我们的页面没有特殊的逻辑,就可以不为页面定义对应的页面类。这个时候,Tapestry会将BasePage类作为默认的页面类。因此,页面必须要有对应的页面类,只是有时候不用我们自己去创建而已。 如果我们认为BasePage类作为默认的页面类并不能满足我们的特殊需求,那么我们可以在应用程序规范文件中指定默认的页面类。例如:
代码
页面事件 PageAttachlistener 当页面被当前请求第一次获取时,在页面持久化属性被回退为初始值之后触发 基于当前session状态创建页面属性,从应用程序整体状态对象中获取数据。 PageValidateListener 当页面被激活的时候触发,可以通过抛出PageRedirectException异常跳转到其他页面 通常用于检查用户是否有权访问该页面,有助于制定应用程序的安全规则。 PageBeginRenderListener 当页面开始表现的时候触发,这是最后一次更新持久化页面属性的机会 通常用于实现页面开始表现是需要实现的业务逻辑 PageDetachListener 当页面与请求分离,页面类实例被Tapestry放回页面缓存池的时候触发 清除页面临时状态,清除所有客户端状态,将页面恢复到初始化状态 |
Tapestry学习笔记(6)
最新推荐文章于 2021-11-27 00:06:47 发布
Tapestry学习笔记(6)
2007-05-31 15:47