`

认识tapestry

阅读更多

   不必关心链接,不必关心请求(http request!不必关心响应(http response!Tapestry构建于底层的request response模式,基于Servlet技术,抽象出面向组件开发的模型,Tapestry关心的是:页面、组件、事件、对象、方法、属性!

安装jar

1、将Tapestry解压目录的lib目录中的jar包拷贝到WEB-INF/lib目录。并删除重复的包(commons- logging.jar/javaassist.jar/ognl-0.26.11.jar

2、在web.xml中添加:

 

    

<servlet>
    <servlet-name>app</servlet-name>
    <servlet-class>org.apache.tapestry.ApplicationServlet</servlet-class>
    <load-on-startup>0</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>app</servlet-name>
    <url-pattern>/app</url-pattern>
  </servlet-mapping> 

 

    这是Tapestry的中央控制器,Tapestry页面显示,所有的请求,都会被发送到这个servlet.

实例1

最简单的Tapestry程序,WebRoot添加Home.html,并访问网址:http://localhost:8080/contextpath/app

结果页面显示Home.html里面的内容。这是因为Tapestry总是会包含一个名字叫"Home"的页面,默认情况下就是根路径下的Home.html.

 

 

实例2:添加简单的动态内容:

 

     

现在时间是:<span jwcid="@Insert" value="ognl:new java.util.Date()"> </span>

 并访问网址:http://localhost:8080/contextpath/app,在这个页面上,用到了TapestryInsert组件(Component.它带一个参数,通过一个ognl表达式来传递。在应用服务器的启动参数中添加 -Dorg.apache.tapestry.disable-caching=true.可以避免每次修改页面模板的时候重启服务器。

 

实例3:创建链接,指向某个页面:

<href="#" jwcid="@PageLink" page="Home">刷新</a>

 

这次通过一个PageLink组件,指向Home页面,PageLink组件会自动产生指向Home页面的链接(我们不必关心这个链接)

 

实例4:简单的计数器

 

    直到现在为止,我们还没有涉及到java类,但是已经让TapeStry成功运行起来了!该是写点java代码的时候了。我们想要创建一个计数器,每当用户点击“计数器增1”的时候,我们将这个计数器加1,然后在页面上显示出这个结果。

    在传统的请求-响应模式中,我们针对这个问题,需要考虑的是:递交一个请求,创建相应的Action来接收这个请求,并维护计数器的值,然后决定成功转向的页面,将结果显示在页面上。

Tapestry中,我们需要考虑的是:在哪个页面处理这个事件,结果如何显示在页面上?下面是Home.html

<!--EndFragment-->

 

<!--EndFragment-->

 

 

<!--EndFragment-->

 

<!--EndFragment--><!--EndFragment-->

“计算器当前值是:<span jwcid="@Insert" value="ognl:counter"></span><br>

<a href="#" jwcid="@DirectLink" listener="listener:doClick" parameters="ognl:1">计数器增1</a><br>”

 

DirectLink指定listenerdoClick,这将触发一个事件,实际上就是将要调用doClick方法。doClick()方法将要写在哪里?因为现在的页面,其动态数据无法简单获得,所以,必须给当前页面创建一个对应的类,我们的方法将创建在这个类里面。注意:在这个例子中,类名需定义为Homelistener的名字为doClick,而不是doClick();

 

添加Tapestry的配置文件:Web-Inf目录下,创建app.application文件。

 

 

 

 

<?xml version="1.0"?>
<!DOCTYPE application PUBLIC 
  "-//Apache Software Foundation//Tapestry Specification 4.0//EN" 
  "http://tapestry.apache.org/dtd/Tapestry_4_0.dtd">
<application>
    <meta   key="org.apache.tapestry.page-class-packages" value="com.bjsxt.crm.web.tapestry.test"/>
</application>

 

实例5:带一个参数的计数器,使用ognl:{param1,param2}这样的方式来传递多个参数<!--EndFragment-->

<!--EndFragment-->

<href="#" jwcid="@DirectLink" listener="listener:plus" parameters="ognl:{3,5}">计算3+5</a><br>

计算结果是:<span jwcid="@Insert" value="ognl:result">

 

<!--EndFragment--> 

<!--EndFragment-->

 

<!--EndFragment-->

 

 

<!--EndFragment-->

 

 

<!--EndFragment-->

 

 

 

 

 

 

 

 

<!--EndFragment-->

 

 

 

 

 

 

 

 

 

 

<!--EndFragment--><!--EndFragment-->

 

 

 

 

 

 

<!--EndFragment-->

 

 

 

 

<!--EndFragment-->

 

 

 

<!--EndFragment-->

 

 

<!--EndFragment-->
分享到:
评论

相关推荐

    Tapestry 重要资料 教你认识tapestry

    【Tapestry重要知识点详解】 Tapestry是一个基于Java的Web应用框架,它不依赖于特定的应用服务器,而是在服务器环境中运行的框架。不同于JSP,Tapestry采用组件对象模型,提供了一种构建高度动态、交互性强的Web...

    认识tapestry几个感觉非常好的资料

    【Tapestry】是Apache软件基金会的一个开源项目,它是一个用于构建动态、模块化和高度可维护的Java Web应用程序的框架。Tapestry的核心理念是将Web应用的UI逻辑与业务逻辑分离,使得开发者可以更加专注于业务处理,...

    tapestry官方中文文档

    Tapestry是一款强大的Java Web应用程序框架,由Apache软件基金会维护,它强调了组件化、模块化和可重用性,使得开发复杂的Web应用变得更加简单。本文将深入介绍Tapestry 4的相关知识点。 1. **组件化编程**: ...

    Tapestry简单入门.rar_java Tapestry_tapestry

    Tapestry是一款强大的Java Web应用程序框架,由Apache软件基金会维护,它提供了一种基于组件的模型来构建动态、数据驱动的Web应用。本教程将帮助初学者了解Tapestry的基本概念,带你逐步入门并掌握其核心组件的使用...

    tapestry教程资料文档合集

    Tapestry5最新中文教程.doc 作者 Renat Zubairov & Igor Drobiazko译者 沙晓兰 发布于 2008年7月2日 下午9时30分 社区 Java 主题 Web框架 ----------------------------------------- Tapestry5.1实例教程.pdf ...

    tapestry学习入门资料

    "tapestry学习入门资料" Tapestry 是一个开源的基于 servlet 的应用程序框架,它使用组件对象模型来创建动态的、交互的 web 应用。 Tapestry 使得 Java 代码与 HTML 完全分离,利用这个框架开发大型应用变得...

    Tapestry4开发指南

    通过这样一个简单的快速启动流程,你将能够对Tapestry4的运作机制有一个基本的认识。随着对Tapestry4的深入学习,你会发现它在构建复杂、高性能的Web应用时的强大潜力,同时,Hivemind的集成使你能够灵活地调整和...

    tapestry源码 api等

    Tapestry是一个强大的Java Web应用程序框架,由Apache软件基金会维护。它强调组件化、模块化和松耦合的开发方式,使得开发人员可以构建出高效、可维护的Web应用。以下是对Tapestry源码、API及相关库的详细解读: 1....

    tapestry3开发指南,带tapestry3所有jar包

    **Tapestry 3 开发指南** Tapestry 3 是一个开源的Java Web应用程序框架,它在20世纪90年代末至21世纪初非常流行,由Apache软件基金会维护。这个框架提供了组件化、事件驱动和声明式编程模型,帮助开发者构建动态、...

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

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

    Tapestry通用WEB框架

    Tapestry是一个强大的Java Web应用程序框架,由Apache软件基金会维护。它旨在提高开发效率,提供高度模块化和可重用的组件,以及优秀的错误处理和调试能力。在深入探讨Tapestry的知识点之前,让我们先了解一下这个...

    tapestry5.2.6 jar包

    Tapestry 5.2.6 是一个成熟的Java Web开发框架,它提供了一种高效、模块化和可扩展的方式来构建动态、数据驱动的Web应用程序。这个框架的核心理念是将用户界面与业务逻辑分离,通过组件化的思想实现页面的构建,从而...

    Tapestry 5 電子書

    《Tapestry 5 電子書》是关于Java Web开发框架Tapestry 5的一本详尽指南,由Packt Publishing在2007年出版。这本书旨在帮助开发者深入理解和掌握Tapestry 5的各个方面,从而利用其强大功能构建高效、可维护的Web应用...

    Tapestry5.0.16_API文档

    Tapestry5.0.16文档和大家一起学习

    tapestry 源码 深入研究tapestry最好资料

    tapestry 源码 深入研究tapestry最好资料

    Tapestry API

    **Tapestry API 深度解析** Tapestry,作为一个强大的MVC(Model-View-Controller)结合模板技术的Web开发框架,为Java开发者提供了一种高效且灵活的构建Web应用程序的方式。它通过组件化的设计,使得代码更加模块...

    tapestry 实例

    **Tapestry 实例详解** Tapestry 是一个开源的Java Web 应用程序框架,由Apache软件基金会维护。它采用组件化的方式构建Web应用,提供了丰富的功能和强大的性能优化,使得开发人员能够更加专注于业务逻辑,而不是...

    Tapestry4.1.2 入门-介绍

    【Tapestry4.1.2 入门-介绍】 Tapestry 是一个基于Java的Web应用程序框架,它提供了一种面向组件的开发方式,极大地简化了Web应用的构建过程。在Tapestry中,开发者无需关注HTTP请求的处理细节,如链接、请求流向和...

Global site tag (gtag.js) - Google Analytics