Tapestry 5是否具有复合组件

时间:2011-09-02 09:21:01

标签: java tapestry

我正在尝试编写像这样的复合组件

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<t:container xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd" xmlns:p="tapestry:parameter">
    <t:select t:id="yearField" t:value="year" t:blankOption="always" t:model="yearModel" class="select"/>
    <t:select t:id="monthField" t:value="month" t:blankOption="always" t:model="monthModel" class="select"/>
</t:container>

这样我就可以像这样使用它了

<t:dateselector t:value="testDate"></t:dateselector>

但我找不到确切的方法来获取单个元素并构造日期元素。有什么想法吗?

1 个答案:

答案 0 :(得分:3)

您必须为value中的Dateyear属性添加month parameter类型public class MyDatePicker { @Parameter private Date value; public Integer getYear() { ... } public void setYear(Integer year) { ... } public Integer getMonth() { ...} public void setMonth(Integer month) { ... } } 以及getter和setter }}:

{{1}}

您可以使用Java的component class或极高的Calendar来获取/设置日期值的不同部分。