温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Tapestry函数执行顺序是怎么样的

发布时间:2021-12-01 16:22:12 来源:亿速云 阅读:118 作者:小新 栏目:编程语言

这篇文章主要介绍Tapestry函数执行顺序是怎么样的,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

1、protected void finishLoad() {}

在Tapestry函数执行顺序中,这个函数***执行,它只在页面池中,没有某一个页面类、需要生成一个新的页面对象时才调用。这里就有一个陷阱:如果tomcat启动时使用了-Dorg.apache.Tapestry.disable-caching=true(为了调试方便而设),那么每次刷新页面时,它都会执行(因为每个request都会新生成一个页面类对象),造成了它总是执行的假象。在实际的部署时,会使用false,则这个函数执行的机会很少。初始化的代码放在4 pageBeginRender()中。

2、public void pageValidate(PageEvent event) {}

如果实现了PageValidateListener接口,则可以在这里进行验证,比如访问权限等。

3、public void activateExternalPage(Object[] parameters, IRequestCycle cycle) {}

如果实现了IExternalPage接口,则可以从这里取得由外面传过来的参数,赋给页面类。

4、public void pageBeginRender(PageEvent event) {}

这里可以进行一些初始化操作。但是这时从客户端传过来的参数还没有被赋值(如果有提交了表单的话)。

5、Tapestry函数执行顺序,如果有表单提交,在这里将会取出那些值,赋给对应的字段。换句话说,如果有表单提交,则将form中的各字段的值赋给页面类。(注意:只是将表单中有的值赋过来)

6、public void submit()

如果有表单提交的话,在这里将进行对应的操作,即表单提交等用到的listenter:调用的方法。因为此时各字段已经取好值了,所以可以拿来直接用。

7、protected void prepareForRender(IRequestCycle cycle) {}

可以在其中进行为了在页面上显示数据而进行的操作,比如取得什么对象,因为这里页面类的属性赋值已经结束,Tapestry函数执行顺序可以直接拿来使用了。

8、public void pageEndRender(PageEvent event) {}

***才执行这个方法。

以上是“Tapestry函数执行顺序是怎么样的”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI