2011-05-12 50 views
0

即時動態生成字段(從一個HashMap):動態fielderror struts2的驗證

<s:iterator value="app.fields" status="field"> 
    <s:set name="findex" value="%{'app.fields[' + #field.index + '].id'}"/>   
    <s:fielderror value="%{#findex}"/> 
    <s:textfield name="%{#findex}" /> 
</s:iterator> 

此方法設置了文本字段確定:

<input type="text" id="saveapp_app_fields_1__id" value="[DE]Enter an ID" name="app.fields[1].id"> 

但不是fielderror。 我在validate方法中手動添加fielderrors。但是對於每個場外恐怖標籤,所有場錯誤都會顯示n次。這意味着實際發生的事情是#findex似乎評估爲空,並且我添加了n <fielderror/>標籤。

我可以在jsp中提取字段錯誤,但希望得到更優雅的解決方案。

在此先感謝。邁克爾。

回答

1

我從來沒有見過以這種方式宣佈的場外恐怖。也許試試:

<s:fielderror> 
<s:param value="%{#findex}" /> 
</s:fielderror>