salut,
dans ma page jsf j'utilise un validator sur un inputText:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<h:inputText
	id="line1"
	value="#{terminalForm.line1}"
	maxlength="24" 
	onkeyup="lengthHL1()" 
	required="true"
	validator="#{terminalForm.checkLine1}"/>
Mon champ est obligatoire (required), j'utilise le validator pour afficher un message personnalisé et pour gérer l'insertion des espaces.

Mon validator est donc le suivant:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
	public void checkLine1(FacesContext context, 
			 UIComponent component, 
			 Object object) 
			 throws ValidatorException {
 
		String var = object.toString();
		var = (var != null)? var=var.trim():"";
 
		if(var.length()==0){
		throw new ValidatorException(
			new FacesMessage("Line 1: Value is required.", null));
	}
Mon problème est au moment du rechargement du formulaire, quand l'inputText est vide est qu'on a cliqué sur mon bouton sauvegarder.
Si je lance le programme en mode debug, je constate que les fonctions get sont appelées une première fois avec des valeurs null, ensuite un deuxième fois avec les bonnes valeurs.
Cela me cause des problèmes dans certaines fonctions get ou j'effectue des opérations sur les valeurs avant de les afficher!

Pourquoi mon programme réagit comme ça? C'est un problème de mon code ou c'est jsf qui fonctionne comme ça? Il y a moyen pour l'éviter ou bien je dois mettre des conditions de not null sur mes fonctions (cela ne m'arrange pas trop..)?

Si ce n'est pas claire, posez moi des questions svp!
Merci pour toute réponse