(转载)Tapestry最新版5.1.0.5教程(二)

1、Start.tml和Start.java
Tapestry不需要在Web.xml中配置welcome页面,也是使用约定大于配置的方式,默认的起始页面就是在pages目录下的Start。Tapestry中的页面由两部分组成:一个Java类和一个相同名字的模板文件(类似于jsp,Tapestry中的后缀名为:tml)。其中Java类是必须的,就算是没有任何代码,也必须要生成一个空类。tml模板在大多数情况下也是需要的,少数情况比如返回二进制流的话,可以不需要。
tml模板文件可以放在webroot目录下,也可以和Java类一起放在src目录下。

2、页面的跳转(可以用于指定跳转页面的东西): @InjectPage
在Tapestry中,页面的跳转和Struts之类的框架是不同的,Struts的做法是Action返回一个字符串,Struts在xml配置文件中进行搜索匹配,决定跳转的页面。而Tapestry没有类似的配置文件,它的做法是在当前页中引用跳转页面。比如:想从Start跳转到Register页面的话,需要在Start中注入Register页面。示例代码如下:

class Start {
@InjectPage
private Register register;

Object onSubmit() {
return register;
}
}

其中值得注意的是:onSubmit的修饰符并不是常见的public,而是缺省级别(或者说是package级别),这是Tapestry推荐的做法。第一,比public级别低,这样的话,页面类的事件处理函数没有被公开,不是其他所有的人都能随便调用。第二,比private级别高,这样如果测试需要的话,可以把测试类放在同一个package里,方便测试的进行。

在Tapestry的事件处理函数中可以有6种方式指定跳转的页面:
a、什么也不返回,也就是返回类型是void,这样的话,页面不跳转,只是刷新当前页面;
b、字符串。Tapestry会查找与该字符串对应的类;
c、类。一般来说是一个Page类,这种方式比返回类名(字符串)要好,因为这样的话,在类重命名后,程序不会出错;
d、Page实例;
e、Link;
f、流(Stream),比如返回pdf或者Excel文件。

3、Tapstry页面中的表达式
类似于jsp中<%= 变量名%>这样的写法,Tapestry的语法是${变量名},其中变量名是需要在页面对应的Java类中有get方法的。

[size=medium][color=blue]原文地址:[url]http://www.blogjava.net/usherlight/archive/2009/05/31/279277.html[/url][/color][/size]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值