刚刚用tapestry4.1.1+spring+hibernate2写了一个留言本

刚刚加入了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]

你可能感兴趣的:(spring,css,IE,tapestry,dojo)