环境:T4
Home.html
<html><body jwcid="@Body">
<table width="246" border="0" cellpadding="0" cellspacing="0" align="center">
<form jwcid="submitForm">
<tr><td width="219" height="16" valign="top">
input1<input type="text" name="textfield" jwcid="input1"/>
</td></tr>
<tr><td height="23" valign="top">
<input type="submit" name="Submit2" jwcid="submit1"/>
</td></tr>
<tr><td height="21" valign="top">
<input type="submit" name="Submit22" jwcid="submit2"/>
</td></tr>
<tr><td height="29" colspan="2" valign="top">
input2<input type="text" name="textfield22" jwcid="input2"/>
</td></tr>
</form>
</table>
</body></html>
Home.page
<component id="submitForm" type="Form"/>
<component id="input1" type="TextField">
<binding name="value" value="input1"/>
</component>
<component id="input2" type="TextField">
<binding name="value" value="input2"/>
</component>
<component id="submit1" type="Submit">
<binding name="listener" value="listener:submit1"/>
</component>
<component id="submit2" type="Submit">
<binding name="listener" value="listener:submit2"/>
</component>
Home.java
public abstract class Home extends BasePage{
@InjectPage("Home")
public abstract Home getHome();
private String input1;
private String input2;
public String getInput1() {
return input1;
}
public void setInput1(String input1) {
this.input1 = input1;
}
public String getInput2() {
return input2;
}
public void setInput2(String input2) {
this.input2 = input2;
}
public IPage submit1(){
this.setInput2(this.getInput1()+this.getInput2());
return getHome();
}
public IPage submit2(){
this.setInput1(this.getInput1()+this.getInput2());
return getHome();
}
}
运行程序,对input1,input2,submit1,submit2操作如下:
1,在input1中输入1;input2中输入2,如图:
2,点击submit1,得到如下结果:
3,重复步骤1, 在input1中输入1;input2中输入2,然后点击submit2,得到如下结果:
------------------------------------------------------------------
上述,操作中input2根本没有接受任何参数,但是input1却是正常的,请问这个问题是什么原因造成?是否是bug.
分享到:
相关推荐
4) **定义页面**:页面是Tapestry4中的主要交互单元,它由一个或多个组件组成。在Java类中定义页面,然后在HTML模板中引用这些组件。 5) **配置URL映射**:Tapestry4通过元数据来处理URL到页面和组件的映射。在模块...
《Tapestry 4开发指南》是一本专为初学者设计的书籍,旨在帮助读者深入理解和熟练运用Tapestry 4这一强大的Java Web框架。Tapestry 4是一款开源的、基于组件的Web应用程序框架,它允许开发者用更加面向对象的方式来...
以下是对Tapestry 4官方文档中版本的详细解析: 1. **组件化开发**: Tapestry 4的核心特性之一是组件化。它允许开发者将UI分解为可重用的组件,每个组件有自己的独立逻辑和视图。这样不仅提高了代码的复用性,还...
在Tapestry中,大多数的编程都是声明式的,这意味着开发者可以使用XML或注解来定义页面和组件的行为,而不是编写大量的Java代码。这降低了代码的复杂性,提高了可读性和维护性。 4. **页面和组件生命周期**: ...
《深入浅出Tapestry4》是一本专为开发者深入理解Tapestry4框架而编写的书籍。Tapestry4是Apache软件基金会开发的一个开源Web应用程序框架,它以组件化和事件驱动的方式,极大地简化了Java Web应用的开发。本章节我们...
Tapestry4开发指南.rar Tapestry4开发指南.rar Tapestry4开发指南.rar
"tapestry中文字典"可能包含对Tapestry框架中的专有名词、API和概念的中文解释,帮助读者更准确地理解和记忆。它可能是以索引形式存在,方便查找和查阅。 通过学习这些文档,开发者可以全面了解Tapestry 4的架构和...
本压缩包包含了一系列的学习资源,帮助开发者深入理解和掌握Tapestry 4和5的关键概念和技术。 1. **Tapestry5最新中文教程.doc**: 这份文档可能是针对Tapestry 5的最新中文教程,旨在为初学者提供一个易懂的入门...
5. **模板语言**:Tapestry4使用HTML模板来定义页面布局,通过特殊的标记与Java代码交互。 6. **事件处理**:Tapestry4支持事件驱动的编程模型,组件之间可以通过触发和响应事件来通信。 7. **错误和异常处理**:...
Tapestry4、Spring 和 Hibernate 是三个在Java Web开发中至关重要的框架。Tapestry4 是一个MVC(Model-View-Controller)框架,提供了一种声明式编程模型,使得开发者可以更专注于业务逻辑,而不是页面的组装。...
Tapestry 5 的优势还体现在REST风格的URL、可降级的JavaScript、不依赖XML的配置等方面,同时它支持与其他框架(如Hibernate、Spring、Seam、Acegi)的集成,增强了灵活性和可扩展性。Tapestry封装了最佳实践,旨在...
Tapestry5最新中文教程.doc 作者 Renat Zubairov & Igor Drobiazko译者 沙晓兰 发布于 2008年7月2日 下午9时30分 社区 Java 主题 Web框架 ----------------------------------------- Tapestry5.1实例教程.pdf ...
Tapestry4是一款基于Java的Web应用程序框架,它在2000年代初期非常流行,由Apache软件基金会维护。这个框架的主要目标是提供一种高效、易于理解和使用的工具,用于构建动态、数据驱动的Web应用。以下是一些关于...
4. **编写第一个页面**:在Tapestry中,一个页面是由一个或多个组件组成的。你需要定义一个类来表示页面,并在HTML模板中声明组件。 接下来,我们转向"tapestry组件.docx",组件是Tapestry的核心组成部分,它们是可...
**Tapestry4框架详解与“水果商店”实例解析** Tapestry4是一个早期的Java Web应用程序框架,它提供了一种强大的方式来构建动态、数据驱动的Web应用。这个框架的核心理念是组件化,允许开发者将UI逻辑分解为可重用...