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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 :

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!