私は以下のコードを持っています
<s:iterator value="assignedProductRoleBean.serviceProfiles" status="serStatus">
<tr>
<td width="150px">
<s:property value="serviceSpecCode" />
</td>
<s:hidden name="assignedProductRoleBean.serviceProfiles[{#serStatus.index}].serviceSpecCode" value="{serviceSpecCode}" />
<td width="150px">
<s:property value="code" />
</td>
<s:hidden name="assignedProductRoleBean.serviceProfiles[%{#serStatus.index}].code" value="%{code}" />
<td width="50px">
<s:checkbox name="assignedProductRoleBean.serviceProfiles[{#serStatus.index}].granted" value="granted" cssStyle="width:20px;border:0;background-color:transparent" />
</td>
<s:iterator value="assignedProductRoleBean.serviceProfiles[{#serStatus.index}].characteristics" status="serCharStatus">
test
<td width="150px">
<s:property value="key" />
</td>
<s:hidden name="assignedProductRoleBean.serviceProfiles[{#serStatus.index}].characteristics[%{#serCharStatus.index}].key" value="%{key}" />
<td width="150px">
<s:textfield theme="simple" name="assignedProductRoleBean.serviceProfiles[%{#serStatus.index}].characteristics[%{#serCharStatus.index}].value" value="%{value}" /></td>
</s:iterator>
</tr>
</s:iterator>
問題は、'granted' の真の値の CHECKED ビューを取得していることです。ただし、ビューページのチェックを外す/チェックインすると、それぞれの Bean に更新されません。
2 番目のイテレータ (内側) に関するもう 1 つの問題。jspページに表示されていませんが、特性があります。ただし、ページを送信した後、アクションクラスに来ています。
ps 私も試しました value=%{granted}