Bonjour,

Je débute en JSF avec SEAM et je n'arrive pas a rafraichir qu'une partie de la page.

Ma page est découpé en 3 parties :
- un div qui contient un "h:selectOneRadio"
- un div qui contient une zone de saisie A
- un div qui contient une zone de saisie B

L'objectif est d'afficher une zone de saisie A si je clique sur la valeur "defense" du radio ou une zone de saisie B si je clique sur la valeur "attaque" du radio


Le code de mon XHTML
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
16
17
18
19
20
21
 
<s:div styleClass="B2">
	<h:outputText value="Type de saisie : "/>
	<h:selectOneRadio id="type_saisi" immediate="true" value="#{Bean.choixAffichage}">
		<f:selectItem itemLabel="Defense" itemValue="defense"  />
		<f:selectItem itemLabel="Attaque" itemValue="attaque" />
		<a4j:support event="onchange"  reRender="bloc_saisi_attaque,bloc_saisi_defense" />
	</h:selectOneRadio>
</s:div>
 
<a4j:outputPanel ajaxRendered="true" rendered="#{Bean.bolRegionAttaque}" id="bloc_saisi_attaque">
	<s:div styleClass="B3" id="saisi_attaque" >
		<h:outputText value="Attaque"/>
	</s:div>
</a4j:outputPanel>
 
<a4j:outputPanel ajaxRendered="true" rendered="#{Bean.bolRegionDefense}" id="bloc_saisi_defense">
	<s:div styleClass="B3"  id="saisi_defense">	
		<h:outputText value="Defense"/>
	</s:div>
</a4j:outputPanel>
Le code de mon bean
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
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 
 
// Valeur du choix du radio
	private String choixAffichage ="defense";
 
	public String getChoixAffichage() {
		return choixAffichage;
	}
 
	public void setChoixAffichage(String strpChoixAffichage) {
		choixAffichage = strpChoixAffichage;
		if(choixAffichage.equalsIgnoreCase("defense")){
			setBolRegionAttaque(false);
			setBolRegionDefense(true);
		}
		else {
			setBolRegionAttaque(true);
			setBolRegionAttaque(false);
		}
		System.out.println(choixAffichage);
	}
 
 
	// Affichage du bloc Attaque
	boolean  bolRegionAttaque = false;
	public boolean isBolRegionAttaque() {
		return bolRegionAttaque;
	}
	public void setBolRegionAttaque(boolean bolRegionAttaque) {
		this.bolRegionAttaque = bolRegionAttaque;
	}
 
	// Affichage du bloc Defense
	boolean  bolRegionDefense = true;
	public boolean isBolRegionDefense() {
		return bolRegionDefense;
	}
	public void setBolRegionDefense(boolean bolRegionDefense) {
		this.bolRegionDefense = bolRegionDefense;
	}
Pouvez-vous m'aider a trouver pourquoi je n'arrive pas a afficher qu'un des 2 bloques avec le reRender du radio (sachant que j'utilise un rendered sur les 2 bloques pour savoir s'ils doivent s'afficher) ?

merci pour votre aide