`
cucuchen520
  • 浏览: 73884 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

刚刚用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:cucuchen520@yahoo.com.cn

  • tapestry4.rar (105.5 KB)
  • 描述: tapestry4.1.1留言本
  • 下载次数: 614
分享到:
评论
4 楼 pior 2007-09-05  
楼上怎么了??

呵呵``

我一年前也看过一点Tapestry```后来发现他做的向前兼容很不好``

每改一个小的版本`用前面版做的东西就不能用了```

还很不好找出在哪错的```

T要是不稳定下来``不利于发展啊```

比较期待T5的正式发布``  看看会不会胜过Struts2``
3 楼 641321 2007-09-05  
yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyv
2 楼 liuhongming 2007-07-24  
1 楼 yyjj001 2007-05-25  
down 下来看看先!

相关推荐

    Tapestry5.1+Spring2.5.6+Hibernate3.2.5写得简单CURD的程序

    Tapestry5.1+Spring2.5.6+Hibernate3.2.5写得简单CURD的程序,借鉴了SpringSide3.1.4.2的配置及数据层。实现了添加,列表,修改,删除,显示等操作。内有源码及生成的WAR文件。可以直接使用!

    Tapestry+Hibernate+spring

    在这个"Tapestry+Hibernate+Spring"的整合示例中,开发者通过熬夜编写了一个包含增删改查功能的T5版本的演示项目。这个项目对于初学者来说极其有价值,因为它展示了这三个框架如何协同工作,构建出高效且易于维护的...

    tapestry5.3.3+spring+hibernate整合源码

    这个整合源码项目将Tapestry、Spring和Hibernate结合在一起,构建了一个高效、灵活的Web应用。 在Tapestry 5.3.3中,开发人员可以通过定义组件来创建页面,每个组件都有自己的状态和行为。这些组件可以是简单的HTML...

    Groovy+Tapestry5+Spring2.5+Hibernate3.2实现CRUD

    标题 "Groovy+Tapestry5+Spring2.5+Hibernate3.2实现CRUD" 涉及到的是一个使用几种技术栈构建Web应用程序的示例。这个项目结合了Groovy、Tapestry 5、Spring 2.5和Hibernate 3.2,旨在展示如何在实际开发中进行数据...

    tapestry4+spring+hibernate整合实例

    Spring 是一个全面的后端框架,它提供了依赖注入、事务管理、AOP(面向切面编程)等功能,而Hibernate 是一个持久化框架,用于简化数据库操作。 在这个"tapestry4+spring+hibernate整合实例"中,我们将探讨如何将这...

    Tapestry5 + spring + hibernate 开发指南

    本文档提供了一个关于如何使用 Tapestry5、Spring 和 Hibernate 构建 Web 应用的详细教程。从环境搭建到实际编码实现,涵盖了整个开发流程的关键步骤。读者可以根据此指南逐步实践,从而掌握这些技术的实际应用。 #...

    基于Tapestry+Spring+Hibernate框架的Web应用

    ### 基于Tapestry+Spring+Hibernate框架的Web应用 #### 框架概述与整合 在当今的企业级Web应用开发中,选择合适的框架是确保应用性能、可维护性和扩展性的关键。Tapestry、Spring和Hibernate作为三个广受好评的...

    Maven + Tapestry5.3.8 + Spring4.0.5 + Oracle10g

    这是Tapestry5.3.8 版本的一个大Demo,集合Spring4.0, 采用Maven 项目管理工具,没有集合Hibernate。 之所以说是个大Demo,是因为这项目中包含的内容并不少,包含: 1)解决了Tapestry5.3.8中文Bug问题 2)Tapestry...

    tapestry hibernate Spring应用及组件的使用

    总结一下,"tapestry hibernate Spring应用及组件的使用"这个例子展示了如何整合这三个强大的框架来构建一个完整的Web应用。Tapestry负责用户界面,Hibernate处理数据持久化,而Spring则提供了整体架构的支持。...

    Tapestry + spring

    在项目中创建`hivemodule.xml`文件并定义一个服务实现,例如`DefaultSpringBeanFactoryHolder`,这将提供一个新的Spring Bean工厂持有者。 ```xml service-id="hivemind.lib....

    Tapestry5, Spring and Hibernate 真正英文版.rar

    在本教程中,"Tapestry5First project with Tapestry5, Spring and Hibernate"将教你如何将这三个强大的框架整合到一个项目中。Tapestry5作为前端MVC框架,处理用户界面和交互;Spring则提供服务层和依赖注入,管理...

    Struts2+Hibernate+Spring框架电子商城

    本系统采用的关键技术是Struts2+Hibernate+Spring整合和AJAX。之所以采用SSH整合是因为在软件工程领域,为了降低模块耦合度,提高模块的可重用性,分层一直是广为采纳的一个方法。其实分层还可以使开发人员专注于某...

    struts2+hibernate3.2+spring2.0配置+入门实例

    ### Struts2+Hibernate3.2+Spring2.0配置及入门实例详解 #### 整体架构概述 在构建企业级Java应用时,系统架构通常被划分为几个关键层次,以确保良好的模块化和可维护性。这包括UI层、业务逻辑层、数据持久层以及...

    tapestry 集成 spring

    Tapestry 是一个组件驱动的框架,强调类型安全和声明式编程,而 Spring 则是一个全面的后端框架,提供依赖注入(DI)、面向切面编程(AOP)和事务管理等功能。将两者结合使用,可以充分利用它们各自的优势,构建高效...

    Tapestry4.1.2 入门-介绍

    Tapestry 是一个基于Java的Web应用程序框架,它提供了一种面向组件的开发方式,极大地简化了Web应用的构建过程。在Tapestry中,开发者无需关注HTTP请求的处理细节,如链接、请求流向和响应重定向等低级任务。相反,...

    TSH.rar_Tapestry spring_tapestry_tapestry hiberna_tapestry workb

    Tapestry Workbench是一个用于调试和测试Tapestry应用的工具,它提供了查看组件状态、触发事件、检查服务等多种功能,对于开发者来说是理解和调试Tapestry应用的重要辅助。 在提供的压缩包中,"test"可能是一个示例...

    tapestry cms hibernate版本

    Tapestry CMS 是一个基于Java的企业级内容管理系统,它采用Apache Tapestry框架构建,提供了一种强大的、可扩展的和灵活的方式来开发Web应用。在“Tapestry CMS Hibernate版本”中,开发团队决定弃用MyBatis作为持久...

    tapestry5以上的帮助事例,帮助文档与spring衔接文档

    Tapestry是一个基于控件的框架以致于用它开发Web应用类似开发传统的GUI应用。你用Tapestry开发Web应用时你无需关注以操作为中心的(Operation-centric) Servlet API.引用Tapestry网站上的一句话:"Tapestry用对象...

    Tapestry+5.1+实例教程

    - 页面是用户看到的一个完整Web界面,由一个或多个组件组成。 - 每个页面都有一个对应的Java类和HTML模板。 2. **组件(Component):** - 组件是构成页面的基本单元,具有独立的功能和状态。 - 组件可以通过绑定...

Global site tag (gtag.js) - Google Analytics