- 浏览: 1225567 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (353)
- java基础 (40)
- tapestry (16)
- gwt (14)
- ajax (7)
- linux (8)
- ubuntu (18)
- eclipse (6)
- dojo (2)
- javascript (7)
- maven (4)
- 日常生活 (29)
- web2.0 (2)
- jsonrpc (1)
- compass (1)
- lucene (0)
- spring (10)
- cluster (3)
- 数据结构 (2)
- sqlserver (1)
- tomcat (2)
- swing (1)
- servlet (1)
- hibernate (1)
- firefox (1)
- Java-Puzzlers (1)
- Wicket (2)
- mysql (10)
- windows (5)
- Webwork (1)
- struts2 (1)
- Seam (2)
- jboss (1)
- idea (6)
- 分布计算 (3)
- Python-Django (7)
- Hadoop (1)
- 工具 (3)
- Tokyo Tyrant (2)
- Comet (1)
- android (115)
- 音乐 (6)
- cxf (1)
- mqtt (1)
最新评论
-
hesai_vip:
学习了,感谢
gradlew wrapper使用下载到本地的gradle.zip文件安装。 -
imknown:
姚瑶大坏蛋 写道我也遇到了这个,用你这个方法,导致下拉刷新不起 ...
解决android-Ultra-Pull-To-Refresh下拉刷新组件中嵌套ViewPager的一个bug -
姚瑶大坏蛋:
我也遇到了这个,用你这个方法,导致下拉刷新不起作用了,你遇到过 ...
解决android-Ultra-Pull-To-Refresh下拉刷新组件中嵌套ViewPager的一个bug -
寐语者:
LeaderElection(String zookeeper ...
使用Zookeeper来为你的程序加上Leader Election的功能。 -
fyc0109:
博主, 安装了一部分还是报这个错误!FAILURE: Buil ...
gradlew wrapper使用下载到本地的gradle.zip文件安装。
现在正在使用T5开发一个小项目。 因为现在T5还正处于发展中。 而且没有像T4一样有许多的文档。 和例子(Workbench, Vlib)。 所以我会把在这个开发中遇到的一些问题记录下来。
我们知道在tapestry4的自带的例子中会有个Border组件。这个自定义的组件其实是起到了一个布局的作用。对网站的统一风格有很大的好处。但是在tapestry5中没有RenderBody这个组件。然而在tapestry5的文档中倒是有提怎样实现。请看http://tapestry.apache.org/tapestry5/tapestry-core/guide/templates.html, 但是作者也是随便提了提。
我们创建一个Layout组建。这个其实就是tapestry4中Border组建了。
Layout.html
这其实是一个很普通的tapestry的页面模板。请注意123行的“<t:body/>”。这就是关键所在,当你使用这个Layout组建时, 组建body的内容就会被render到t:body的地方。
对应的,你需要再增加个page class, 虽然它在这里其实是个空壳。 但是你也可以定义参数之类的。 它是一个tapestry component(组件)
Layout.java
下面是怎样使用这个布局组件。
AddOrEditDriver.html
所有的页面都是t:layout包括。 当然这部分页面会被layout组件render出来。
注意: 你最好是在你的所有的page template开头加上<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 这个部分。 要不然会遇到页面中如果有 之类的tag。 页面解析会报错。
没有意思, 假的, tapestry render会忽略这些属性。
我们知道在tapestry4的自带的例子中会有个Border组件。这个自定义的组件其实是起到了一个布局的作用。对网站的统一风格有很大的好处。但是在tapestry5中没有RenderBody这个组件。然而在tapestry5的文档中倒是有提怎样实现。请看http://tapestry.apache.org/tapestry5/tapestry-core/guide/templates.html, 但是作者也是随便提了提。
我们创建一个Layout组建。这个其实就是tapestry4中Border组建了。
Layout.html
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Gtts</title> <link rel="stylesheet" type="text/css" href="../../css/main.css" media="screen" /> <link rel="stylesheet" type="text/css" href="../../css/print.css" media="print" /> <!--[if lte IE 6]> <link rel="stylesheet" type="text/css" href="css/ie6_or_less.css" /> <![endif]--> <script type="text/javascript" src="../../js/common.js"></script> <style type="text/css"> table.t-data-grid { border-collapse:collapse; border-left:1px solid silver; width:100%; } table.t-data-grid thead tr { background:#990000 url(../../images/sprites.gif) repeat-x scroll 0pt -1300px; color:white; } div.t-data-grid-pager span.current { background:#FFFFFF none repeat scroll 0%; border:1px solid #CCCCCC; color:#CCCCCC; padding:2px 5px; text-decoration:none; } div.t-data-grid-pager a:hover { background:#CC0000 none repeat scroll 0%; color:#FFFFFF; } div.t-data-grid-pager a { border:1px solid silver; color:#CC0000; font-size:medium; margin-right:5px; padding:2px 5px; text-decoration:none; } div.t-data-grid-pager span.current { border:1px solid silver; color:black; font-size:medium; margin-right:5px; padding:2px 5px; text-decoration:none; } </style> </head> <body id="type-a"> <div id="wrap"> <div id="header"> <div id="site-name">Gtts</div> <div id="search"> <form action=""> <label for="searchsite">Site Search:</label> <input id="searchsite" name="searchsite" type="text" /> <input type="submit" value="Go" class="f-submit" /> </form> </div> <ul id="nav"> <li class="first"><a href="#">Home</a></li> <li class="active"><a href="#">Products</a> <ul> <li class="first"><a href="#">Maecenas</a></li> <li class="active"><a href="#">Phasellus</a></li> <li><a href="#">Mauris sollicitudin</a></li> <li><a href="#">Mauris sollicitudin</a></li> <li><a href="#">Mauris sollicitudin</a></li> <li><a href="#">Mauris sollicitudin</a></li> <li class="last"><a href="#">Mauris at enim</a></li> </ul> </li> <li><a href="#">Client list</a> <ul> <li class="first"><a href="#">Maecenas</a></li> <li><a href="#">Phasellus</a></li> <li><a href="#">Mauris sollicitudin</a></li> <li class="last"><a href="#">Mauris at enim</a></li> </ul> </li> <li><a href="#">Case Studies & References</a> <ul> <li class="first"><a href="#">Maecenas</a></li> <li><a href="#">Phasellus</a></li> <li><a href="#">Mauris sollicitudin</a></li> <li><a href="#">Phasellus</a></li> <li><a href="#">Mauris sollicitudin</a></li> <li><a href="#">Phasellus</a></li> <li><a href="#">Mauris sollicitudin</a></li> <li><a href="#">Phasellus</a></li> <li><a href="#">Mauris sollicitudin</a></li> <li><a href="#">Phasellus</a></li> <li><a href="#">Mauris sollicitudin</a></li> <li class="last"><a href="#">Mauris at enim</a></li> </ul> </li> <li class="last"><a href="#">Locations</a> <ul> <li class="first"><a href="#">Maecenas</a></li> <li><a href="#">Phasellus</a></li> <li><a href="#">Mauris sollicitudin</a></li> <li class="last"><a href="#">Mauris at enim</a></li> </ul> </li> </ul> </div> <div id="content-wrap"> <div id="content"> <!-- body goes here. --> <t:body/> <div id="footer"> <p>作者:邓胤</p> <p><a href="mailto:deng.yin@gmail.com">邮箱</a> | <a href="http://dengyin2000.iteye.com">博客</a></p> </div> </div> </div> </div> </body> </html>
这其实是一个很普通的tapestry的页面模板。请注意123行的“<t:body/>”。这就是关键所在,当你使用这个Layout组建时, 组建body的内容就会被render到t:body的地方。
对应的,你需要再增加个page class, 虽然它在这里其实是个空壳。 但是你也可以定义参数之类的。 它是一个tapestry component(组件)
Layout.java
package com.javaeye.dengyin2000.gtts.components; public class Layout { }
下面是怎样使用这个布局组件。
AddOrEditDriver.html
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <t:layout xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd"> <form t:type="form" t:id="form" clientValidation="true" action="forms.html" method="post" class="f-wrap-1"> <div class="req"><b>*</b> 为必填项</div> <fieldset> <h3>${action}司机</h3> <table width="100%" border="0"> <tr> <td colspan="2"> <div t:type="Message" /> <t:errors/> </td> </tr> <tr> <td> <label t:type="Any" for="name"><b><span class="req">*</span>姓名:</b> <input t:type="TextField" t:id="name" validate="required" value="driver.name" label="姓名" class="f-name" tabindex="1" /><br /> </label> </td> <td> <label t:type="Any" for="idCard"><b><span class="req">*</span>身份证:</b> <input t:type="TextField" t:id="idCard" validate="required" value="driver.idCard" label="身份证" class="f-name" tabindex="2" /><br /> </label> </td> </tr> <tr> <td> <label t:type="Any" for="carNo"><b><span class="req">*</span>车牌号码:</b> <input t:type="TextField" t:id="carNo" validate="required" value="driver.carNo" label="车牌号码" class="f-name" tabindex="3" /><br /> </label> </td> <td> <label t:type="Any" for="telNo"><b><span class="req">*</span>电话:</b> <input t:type="TextField" t:id="telNo" validate="required" value="driver.telNo" label="电话" class="f-name" tabindex="4" /><br /> </label> </td> </tr> <tr> <td> <label t:type="Any" for="national"><b>民族:</b> <input t:type="TextField" t:id="national" value="driver.national" label="民族" class="f-name" tabindex="5" /><br /> </label> </td> <td> <label t:type="Any" for="carLong"><b>车长:</b> <input t:type="TextField" t:id="carLong" value="driver.carLong" label="车长" class="f-name" tabindex="6" /><br /> </label> </td> </tr> <tr> <td> <label t:type="Any" for="carWidth"><b>车宽:</b> <input t:type="TextField" t:id="carWidth" value="driver.carWidth" label="车宽" class="f-name" tabindex="7" /><br /> </label> </td> <td> <label t:type="Any" for="carHeight"><b>车高:</b> <input t:type="TextField" t:id="carHeight" value="driver.carHeight" label="车高" class="f-name" tabindex="8" /><br /> </label> </td> </tr> <tr> <td colspan="2"> <label t:type="Any" for="address"><b>住址:</b> <input t:type="TextField" t:id="address" value="driver.address" label="住址" size="30" class="f-name" tabindex="9" /><br /> </label> </td> </tr> <tr> <td colspan="2"> <div class="f-submit-wrap"> <input type="submit" value="修改" class="f-submit" tabindex="9" /><br /> </div> </td> </tr> </table> </fieldset> </form> </t:layout>
所有的页面都是t:layout包括。 当然这部分页面会被layout组件render出来。
注意: 你最好是在你的所有的page template开头加上<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 这个部分。 要不然会遇到页面中如果有 之类的tag。 页面解析会报错。
评论
2 楼
dengyin2000
2007-08-31
hitalang 写道
<form t:type="form" t:id="form" clientValidation="true" action="forms.html" method="post" class="f-wrap-1">
中的action="forms.html"什么意思??
中的action="forms.html"什么意思??
没有意思, 假的, tapestry render会忽略这些属性。
1 楼
hitalang
2007-08-30
<form t:type="form" t:id="form" clientValidation="true" action="forms.html" method="post" class="f-wrap-1">
中的action="forms.html"什么意思??
中的action="forms.html"什么意思??
发表评论
-
解决用run-jetty-run锁住css,js文件的问题。
2008-09-25 17:46 6650开发中用run-jetty-run插件启动jetty调式tap ... -
打造Tapestry5中的智能的错误页面。
2008-09-18 15:59 1812我们一般需要为生产和开发环境准备两套error page。 t ... -
T5这么多的Page Lifecycle method, 应该怎样使用?
2008-09-04 18:18 2398Tapestry5种大概有以下Page ... -
扔掉T5复杂的Grid组件,打造自己灵活的支持分页排序组件。
2008-01-03 13:12 2875Grid算是比较T5中较复杂的一个组件,我也有篇介绍Grid怎 ... -
对Tapestry的一点思考。
2007-12-27 23:33 4097Tapestry5已经开发了蛮久了。 听说最近要发布T5.0. ... -
Tapestry 5.0.5 bug, TAPESTRY-1648
2007-08-26 12:20 2633有一个domian object, 其中有个property的 ... -
T5 技巧 2:为Grid组件的每一行增加“删除/修改”链接。
2007-08-21 12:35 9037现在正在使用T5开发一个小项目。 因为现在T5还正处于发展中。 ... -
T5 技巧 1:解决Form的提交乱码问题。
2007-08-21 10:58 8379现在正在使用T5开发一个小项目。 因为现在T5还正处于发展中。 ... -
T5 developing with WTP and TOMCAT
2007-08-16 09:50 2746以下是我发给tapestry右键列表的问题。 现在还没有人回复 ... -
Wicket Vs Tapestry
2007-05-11 14:41 7486我是一个tapestry的老用户。从学校毕业就开始使用tape ... -
Tapestry5中 page template不能reload。
2007-05-09 13:50 5890上午看了下tapestry5的文档,然后自己写了个简单的页面。 ... -
Tapestry Table 组件的强大(分页查询时只fetch当前页的数据)。
2006-03-01 16:00 4369导入的blog格式乱了,大 ... -
Tapestry 显示图片
2006-03-06 16:00 2781导入的blog格式乱了,请看我的msn spaces blog ... -
@Persist 解释
2006-03-08 16:00 3156a) @Persist("client") ... -
原创 Tapestry的Cache组件
2006-12-22 11:24 5092有许多页面的一部分或者这个页面是很少更新的,他们通常是由外部文 ...
相关推荐
Bart_T5-摘要使用来自Bart和T5模型的汇总任务可以直接比较文本摘要Bart和T5的最佳模型。安装需求pip install -U transformerspip install -U torchpip install flask跑步python app.py巴特总结T5总结
3. **加载模型和分词器**:使用`T5Tokenizer`对文本进行分词,然后加载预训练的T5模型,例如`tokenizer = T5Tokenizer.from_pretrained('t5-base')`和`model = T5ForConditionalGeneration.from_pretrained('t5-base...
知识点3:Chain of Thought(CoT)是一种最新的Prompting机制,可以让语言模型有了自我改进的能力。 知识点4:谷歌研究者们推进了Instruction Tuning的性能水平,模型参数上升至540B,微调任务的数量高达1800多个。...
7. **开发流程**:使用这些资料,开发者首先需要了解T5UIC1的硬件接口和基本操作,然后使用SDK中的工具和库来编写控制代码,最后将代码烧录到主控器中,通过串口与屏幕进行通信,实现所需的显示效果和交互功能。...
【GNUVario-TTGO-T5-website:GNUVario-TTGO-T5-网站】是一个专注于GNUVario-E项目的在线资源平台,该平台致力于提供基于ESP32芯片的开源硬件设计和变量计的详细信息。这个项目的核心是将开源精神应用于电子工程领域...
中文生成式预训练模型,以mT5为基础架构和初始权重,通过类似PEGASUS的方式进行预训练。 详情可见: ://kexue.fm/archives/8209 分词器 我们将T5 PEGASUS的令牌生成器转换成BERT的令牌生成器,它对中文更友好。同时...
8. **调试技巧**:在开发过程中,使用如串口终端工具进行调试是必不可少的。了解如何通过日志输出、断点调试、性能分析等手段定位和解决问题至关重要。 9. **固件更新**:当程序开发完成后,开发者需要学会如何将...
本章详细讲解如何使用图形界面设计工具创建和编辑屏幕显示效果,包括按钮、文本框、图像等元素的布局和交互设计。 ### 第五章(假设存在)应用实例与调试 #### 5.x 实例分析及问题解决 通过实际应用案例,展示如何...
《索尼T5数码相机官方驱动及使用手册》 在摄影领域,索尼T5数码相机以其卓越的性能和便携性赢得了众多消费者的喜爱。为了确保用户能够充分利用这款设备,官方提供了驱动程序和使用手册,帮助用户更好地理解和操作...
【标题】"DGUS_V7624_T5L屏开发软件DWIN_"涉及的核心知识点是基于迪文科技(DWIN)的T5L液晶显示屏的开发,利用DWIN提供的专用开发工具进行屏幕设计和程序编写。这个软件适用于将T5L屏作为DGUS2系统的一部分来使用的...
【T5贴片二极管】是电子元器件中的一种,属于快速开关二极管,其型号为1N4448W。该二极管采用塑封塑料体设计,端子为可焊镀铅,符合MIL-STD-750标准的2026方法,便于自动插入和表面安装。二极管的极性在壳体上有明确...
T5荧光灯管是一种高效节能的照明设备,广泛应用于商业和工业照明中。以下是关于T5荧光灯管的一些详细参数和相关知识点: 1. **功率与电压**: - T5灯管的功率范围从14W到35W不等,这决定了其在不同场合下的应用。...
**如何使用T5-Small问答模型** 使用这个模型通常涉及以下步骤: 1. **预处理**:将输入问题和上下文文本转化为模型可理解的格式。 2. **编码**:将预处理后的输入馈送给T5-Small模型,模型将其转换为内部表示。 3....
东风风行T5 EVO是一款汽车产品,本部分的知识点将围绕这款汽车的使用手册展开,手册中涉及了汽车的安全驾驶、操作指南、保养维护等详细信息,旨在帮助车主更好地了解和使用车辆,确保行车安全。 首先,手册开头部分...
3. **迪文T5L特性**:迪文T5L微控制器拥有高性能的CPU,增强的存储空间,以及多种通信接口如UART、SPI、I2C等。此外,它可能还集成了ADC、DAC、PWM等模拟电路,提供强大的硬件支持。 4. **项目模板**:项目模板是...
该指南详细介绍了如何使用迪文D3进行高效、便捷的界面设计和程序开发,旨在帮助开发者快速掌握相关技能,实现高质量的触摸屏应用。 在迪文D3开发过程中,首先需要了解的是其硬件特性。D3是一款集成了高分辨率显示和...
在硬件配置方面,Turbo T5搭载了Samsung 667MHz CPU,内存为128MB,内置存储为256MB,并支持最大16GB的T卡扩展。其无线网络功能支持802.11b/g标准,可以轻松接入Wi-Fi网络。此外,设备还配备了SIRFIII代GPS芯片,...
这款源码的最新版,即"友价源码t2t4t5友价网店商城网站源码最新版",是电商网站建设和运营的重要工具,尤其对于那些希望自定义在线商店功能的企业或个人开发者来说,它提供了丰富的定制可能性。 友价源码的核心功能...