RichFaces : orderingList et inputText?
Bonjour,
Mon problème est le suivant : je n'arrive pas à soumettre un formulaire qui contient une rich:orderingList qui contient elle même des h:inputText.
Je dispose d'un POJO que j'appelle KeyValue. Ce POJO possède des champs clé, valeur et index. En abrégé :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| public class KeyValue implements Cloneable,java.io.Serializable {
protected java.lang.String keyName;
protected java.lang.String value;
protected java.lang.Integer keyIndex;
public java.lang.String getKeyName() {...
public void setKeyName(java.lang.String keyName) {...
public java.lang.String getValue() {...
public void setValue(java.lang.String value) {..
public java.lang.Integer getKeyIndex() {...
public void setKeyIndex(java.lang.Integer keyIndex) {...
...
} |
Je récupère ma liste de KeyValue via un DAO traditionnel, et l'utilise dans mon Backing Bean. En résumé :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| public class DKVEditFace{
private List<KeyValue> currentKeyValueList;
public List<KeyValue> getCurrentKeyValueList() {...
public void setCurrentKeyValueList(List<KeyValue> currentKeyValueList) {...
public void saveKeyValues(ActionEvent event) {
System.out.println("Save");
}
...
} |
Et enfin, je lie tout cela dans ma page très simplement :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| <h:form id="domainForm">
<rich:orderingList value="#{DKVEditFace.currentKeyValueList}" var="keyValue">
<rich:column>
<h:outputText value="#{keyValue.keyName}"/>
</rich:column>
<rich:column>
<h:inputText value="#{keyValue.value}"/>
</rich:column>
</rich:orderingList>
<p>
<h:commandButton value="#{Bundle.button_save}" actionListener="#{DKVEditFace.saveKeyValues}"/>
</p>
</h:form> |
La page s'affiche correctement, me laissant supposer que tout cela fonctionne à merveille. Le seul soucis, c'est dès que j'appuie sur le bouton "SAVE", je me choppe l'erreur suivante :
Citation:
javax.servlet.ServletException: /pages/admin/dropdownManagement.xhtml @52,50 value="#{keyValue.keyName}": Property 'keyName' not found on type java.lang.String
Auriez-vous une idée? Je ne comprend pas pourquoi il semble vouloir utiliser mon objet KeyValue comme si c'était un String...?
D'avance merci!