Допустим, мой контроллер выглядит следующим образом:
public class myController {
private MyCustomItem acte;
...
// getter and setter
}
и класс MyCustomItem
имеют набор другого класса, как этот
public class MyCustomItem {
private Set<AnotherClass> signataires;
...
// getter and setter
}
Наконец, AnotherClass
У элемента есть некоторые строковые атрибуты.
В представлении, связанном с моим контроллером, я хочу установить эти строковые атрибуты при отправке формы, поэтому я написал view.jsp
следующим образом:
<!-- some html before -->
<s:form namespace="/my/namespace" action="MyController_execute">
<s:iterator value="acte.signataires" status="signaStatus">
<s:hidden name="id" value="%{id}" />
<s:property value="collectivite.nom"/>
<s:textfield name="acte.signataires(%{#signaStatus.index}).commentaire" cssStyle="width:250px;"/>
</s:iterator>
<s:submit/>
</s:form>
После того, как я отправил форму, в моем контроллере, если я попытаюсь получить некоторые значения из моего Set <> acte.signataires
, они будут нулевыми:
for (AnotherClass signataire : acte.getSignataires()) {
System.out.println(signataire.getCommentaire()); // this print NULL
}
какая-нибудь помощь в этом?Является ли мой JSP сопоставления плохо?Я также попробовал очень простой синтаксис, такой как <s:textfield name="commentaire" cssStyle="width:250px;"/>
, но он также не будет работать