@Inject
private Messages messages;
public SelectModel getSelects()
{
return new EnumSelectModel(Select.class, messages);
}
private Select select;
<t:select t:id="select" model="selects" value="prop:select" />
Select组件的model参数的类型是org.apache.tapestry5.SelectModel,用于提供下拉框中的选项。SelectModel是一个接口,我们可以自己创建实现SelectModel接口的类。Tapestry有一个专门用于枚举的实现类org.apache.tapestry5.util.EnumSelectModel。EnumSelectModel类的构造方法有两个参数,第一个是枚举的class,第二个是org.apache.tapestry5.ioc.Messages。关于Messages,在本地化一章中有专门讨论,这里我们只要知道Messages会从properties文件获取本地化信息用于显示在下拉框中。