刚刚加入了tapestry这个圈子,其实本人十分钟爱tapestry,从T3开始就给予了它极大的关注,可是那是一年多以前的事情,现在居然连t5都出来啦,呵呵,高兴,居官方说没有XML和page 了,真是振奋人心啊..
董黎伟写了一本<深入浅出tapestry>我个人认为写的非常好.但是有一个重大的缺点是他居然没有一个完整的tapestry实例,在光盘里的东西存放的乱七八糟,不堪入目,也没有说出T4.0和T4.1的区别,后来我问过他本人,他说他一直用的是4.0版本。没有用4.1.1版本。
在T4.1里面,增加了对JSON,XHR,Dojo,Widgets的支持
客户端验证完全由Dojo代替
增加了一个新的@EventListener Annotations
去掉了Foreach组件,用For组件代替
增加了@Relation组件
调用的lib包有所不同,具体我开列如下:
backport-util-concurrent-2.2.jar
commons-beanutils-1.7.0.jar
commons-codec-1.3.jar
commons-fileupload-1.1.1.jar
commons-io-1.1.jar
commons-lang-2.2.jar
commons-logging-1.0.3.jar
hivemind-1.1.1.jar
hivemind-lib-1.1.1.jar
javassist-3.0.jar
jboss-j2ee-4.0.2.jar
ognl-2.6.9.jar
oro-2.0.8.jar
portlet-api-1.0.jar
tapestry-annotations-4.1.1.jar
tapestry-contrib-4.1.1.jar
tapestry-framework-4.1.1.jar
tapestry-portlet-4.1.1.jar
在使用客户端验证的时候请自己在HTML里面加入css,不然很难看.css如下:
.alertButton {
width: auto;
border: none;
background-color: #699ED9;
color: #fff;
padding: 0.1em;
border-bottom: 1px solid #5885b6 !important;
border-right: 1px solid #5885b6 !important;
border-top: 1px solid #92b8e2 !important;
border-left: 1px solid #92b8e2 !important;
cursor: hand;
cursor: pointer;
}
.alertDialog {
width: 30em;
border: 2px solid #ff660a;
padding: 1em;
background: #ffffff;
-moz-border-radius: 10px;
}
.alertContent .alertButton {
float: right;
position: relative;
bottom: 1em;
}
.missingList, .invalidList {
padding-bottom: 0.6em;
padding-top: 0.2em;
padding-left: 0.1em;
padding-right: 0.2em;
margin: 0;
}
.missingList {
border-top: 4px solid #bedef4;
}
.invalidList {
border-top: 4px solid #ffaf7e;
}
.missingList li, .invalidList li {
list-style: none;
font-style: italic;
}
.fieldMissing {
background: #bedef4;
}
.fieldInvalid {
background: #ffaf7e;
font-weight: bold;
}
另外给董黎伟的<深入浅出tapesty>指出一个错误,
ValidationDelegate delegate = (ValidationDelegate) this.getBeans().getBean("delegate");
if (delegate.isInError()) {
return this.getPageName();
}
在服务端验证的时候会出现跳过程序的错误,应该为:
ValidationDelegate delegate = (ValidationDelegate) this.getBeans().getBean("delegate");
if (delegate.getHasErrors()) {
return this.getPageName();
}
在T4.1.1+dojo框架中,如果用IE的话,tomcat控制台会出现如下错误:
Failure to export classpath resource /dojo/dojo.js
同时用一段时间会出现out of memory ,但本人在firefox下面测试完好,目前还没有找出原因,如果有知情的高手请通知我一声.
初来此地,要想混得好,还得提供一下小礼物,我自己写了一个留言本,用的是t4.1.1.上传上来了,如果有需要的朋友,请下载吧,呵呵.
运行环境:tomcat5.0+mysql5.0+jdk5.0
开发环境:IntelliJ IDEA 5.1+jdk5.0
里面的Home.page
用户名:任意
密 码:123456
这个留言本功能很简单,只实现了一般功能和上传功能。我只是起到一个抛砖引玉的作用,有时间我会写一下这个留言本的详细使用文档和开发文档。
如大家在使用的过程中有什么问题可以联系我。
email:[email protected]