2012-09-16 2 views
0

Je développe une page JSF qui contient un formulaire avec beaucoup de valeurs de chaîne d'entrée. Je ne veux pas créer un champ correspondant dans le bean pour chaque entrée. Est-il possible d'utiliser une carte à la place.JSF: stocker des données de formulaire sur une carte

Voici ce que je veux que mon élément d'entrée de forme pour ressembler à:

<h:inputText value='#{myBean.data["key"]}' /> // or something like this 

Et la fève contient la carte comme suit:

class myBean { 
Map data; 

... 
} 
+0

Oui, c'est. Quel est exactement le problème auquel vous êtes confronté? C'est une question plus intéressante pour Stack Overflow qu'une question rhétorique de type oui-non. – BalusC

+0

Que devrait faire getter et setter pour le fonctionnement de la carte si je crée un tel code? – kbeat

Répondre

2

Que faut-getter et setter pour le fonctionnement de la carte ressembler si je crée un tel code?

Rien de spécial. Juste un getter standard comme vous devriez toujours l'utiliser pour les propriétés du modèle.

public Map<String, Object> getData() { 
    return data; 
} 

Un setter n'est pas obligatoire car il ne sera pas utilisé de toute façon. EL utilisera la méthode put() de la carte pour cela. Vous n'avez qu'à vous assurer que la carte est déjà précréée dans le constructeur (post) du bean, JSF/EL ne le fera pas pour vous.

public MyBean() { 
    data = new HashMap<String, Object>(); 
} 
Questions connexes