时间:2010-09-12 07:14:43

标签: java jsf tomahawk

我在jsf页面中使用了Tomahawk <t:selectOneRadio>。我为我的后端bean中的每个单选按钮保留了一个布尔值,但是我将组件链接到辅助bean时遇到了问题。我该如何将组件链接到支持bean?

我的数据模型在支持bean中是错误的吗?

这是我的代码:

<t:radio index="0" for="select"></t:radio>
<t:selectOneRadio id="select" layout="spread">
<f:selectItem itemLabel="Every" itemValue="Every" />
<h:inputText id="days" /> days 
<br />
<t:radio index="1" for="select"></t:radio>
<f:selectItem itemLabel="Every Weekday"
itemValue="Every Weekday" />
</t:selectOneRadio>

1 个答案:

答案 0 :(得分:1)

使用value属性。

<t:selectOneRadio value="#{bean.selectedItem}">

也就是说,组件在代码中的使用方式不正确。只有选择项应该放在组件中,t:radio索引应该从0开始。这是一个重写:

<t:selectOneRadio id="frequency" value="#{bean.frequency}" layout="spread">
    <f:selectItem itemLabel="Every" itemValue="Every" />
    <f:selectItem itemLabel="Every weekday" itemValue="Every weekday" />
</t:selectOneRadio>

<t:radio for="frequency" index="0" /><h:inputText value="#{bean.days}" /> days
<br />
<t:radio for="frequency" index="1" />

在bean中你需要以下内容:

private String frequency;
private Integer days;
// Add/generate getters and setters.

根据选择,所选的itemValue将设置为frequency(可以是"Every""Every weekday"),也可以设置为days将设为days