下一代WEB开发模式Tapestry简介
http://tech.ddvip.com 2006年11月25日 社区交流
本文详细介绍下一代WEB开发模式Tapestry简介
也许你会问,网页上输出的用户名明明是Jack嘛,为什么HTML模板中是User name呢?这是因为当tapestry一旦发现某个HTML标签有jwcid的属性后,它就会把这个标签当做一个组件来看待,至于标签里面的东西到底是原样输出或忽略就要依照那个组件的类型而定了,在这里我们的user组件实际上是一种Insert类型的组件,因此会把<span>标签内的内容忽略掉,其实也可以直接写成<span jwcid=”user”></span>,效果也是一样的,只不过加了User name后就方便了美工人员的排版设计。
请注意,HTML模板有它自己的命名规范,它的文件名应该与Page组件的定义文件相同,只不过是扩展名为.html,与普通的web服务器一般都有一个index.html类似,tapestry也有自己的”index.html”,只不过它的名字不是”index.html”,而是Home.html,那么这些模板文件究竟应该放在哪儿呢?很简单,放在当前应用的目录下面就行了,比如我们的应用是Welcome,那把它放在webapps/Welcome目录下面就行了。
Home.page
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE page-specification PUBLIC
"-//Apache Software Foundation//Tapestry Specification 3.0//EN"
"http://jakarta.apache.org/tapestry/dtd/Tapestry_3_0.dtd">
<page-specification class="demo.Home">
<component id="user" type="Insert">
<binding name="value" expression="userName"/>
</component>
<context-asset name="$template" path="Home.html"/>
</page-specification> 以上这个文件便是这个名为”Home”的Page组件的页面定义文件,它好像是一座桥,联系着HTML模板和JAVA类进行协同工作。这个定义文件“Home.page”实际上就是一个xml文件,它的根元素是page-specification,它有一个名为class的属性,用来指示HTML模板与哪个java类协同工作,在本例中为demo.Home这个类。
责编:豆豆技术应用
正在加载评论...