Ayuda con validacion en jsf , mostrar un panel usando primefaces?
Publicado por Root (1 intervención) el 20/11/2017 04:27:39
Hola, lo que estoy trantando de hacer es que al validar la edad que se ingresa a través del calendario, validar si es menor de edad requiere tutor y desplegar ese panel
ya obtengo la edad y hago lo siguiente pero no me muestra el panel del tutor
Este es mi bean
y la vista, que cuando le des click en el boton aparezca el panel del tutor
ya obtengo la edad y hago lo siguiente pero no me muestra el panel del tutor
Este es mi bean
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
@ManagedBean(name = "datosPersonales")
@ViewScoped
public class DatosPersonales {
private String nombre;
private String apellido1;
private String apellido2;
private Date fechaNacimiento;
public int edad;
private boolean padresTutoresDiv;
private boolean padreTutor;
private boolean madreTutora;
//metodo para obtener la edad
public void obtenerEdad(){
edad = DateUtils.getYearsOld(fechaNacimiento);
System.out.println("LA EDAD ES" +edad);
padresTutoresDiv=(Boolean.FALSE);
if(edad<18){
padresTutoresDiv=(Boolean.TRUE);
}
if(padresTutoresDiv) {
if(!(padreTutor||madreTutora))
{//Si no hay ninguno activado
padreTutor=Boolean.TRUE;//Activa al menos uno por default
}
}
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public String getApellido1() {
return apellido1;
}
public void setApellido1(String apellido1) {
this.apellido1 = apellido1;
}
public String getApellido2() {
return apellido2;
}
public void setApellido2(String apellido2) {
this.apellido2 = apellido2;
}
public Date getFechaNacimiento() {
return fechaNacimiento;
}
public void setFechaNacimiento(Date fechaNacimiento) {
this.fechaNacimiento = fechaNacimiento;
}
public int getEdad() {
return edad;
}
public void setEdad(int edad) {
this.edad = edad;
}
public boolean isPadresTutoresDiv() {
return padresTutoresDiv;
}
public void setPadresTutoresDiv(boolean padresTutoresDiv) {
this.padresTutoresDiv = padresTutoresDiv;
}
public boolean isPadreTutor() {
return padreTutor;
}
public void setPadreTutor(boolean padreTutor) {
this.padreTutor = padreTutor;
}
public boolean isMadreTutora() {
return madreTutora;
}
public void setMadreTutor(boolean madreTutora) {
this.madreTutora = madreTutora;
}
}
y la vista, que cuando le des click en el boton aparezca el panel del tutor
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<h:form>
<br></br>
<p:fieldset legend="DATOS " toggleable="true" toggleSpeed="500">
<h:outputText value="Nombre" />
<p:inputText required="true"
value="#{datosPersonales.nombre}"
onblur="javascript:this.value = this.value.toUpperCase();" />
<h:outputText value="Apeliido 1" />
<p:inputText required="true"
value="#{datosPersonales.apellido1}"
onblur="javascript:this.value = this.value.toUpperCase();" />
<h:outputText value="Apellido 1" />
<p:inputText required="true"
value="#{datosPersonales.apellido2}"
onblur="javascript:this.value = this.value.toUpperCase();" />
<h:outputText value="Fecha de Nacimiento" />
<p:calendar id="button" value="#{datosPersonales.fechaNacimiento}" showOn="button" />
</p:fieldset>
<br></br>
<p:commandButton value="ENVIAR" id="ajax" action="#{datosPersonales.obtenerEdad}" styleClass="ui-priority-primary" />
<br></br>
<br></br>
<br></br>
<!--PANEL DEL TUTOR-->
<p:outputPanel id="pnlTutores">
<h:panelGrid width="100%" rendered="#{datosPersonales.padresTutoresDiv}">
<h:panelGrid columns="3" >
<h:outputText value="Padre o tutor 1" />
<p:selectBooleanCheckbox id="checkPadreTutor" value="#{datosPersonales.padreTutor}">
</p:selectBooleanCheckbox>
</h:panelGrid>
<p:fieldset legend="TUTOR 1" toggleable="true" toggleSpeed="500">
<h:panelGrid columns="5" width="100%" >
<h:panelGrid columns="3" width="100%">
<!--CURP-->
<h:outputText value="CURP:*" />
<p:inputText id="datospersonalestutores_curp" required="true" label="datospersonales_curp"
readonly="readonly" maxlength="18" onblur="javascript:this.value = this.value.toUpperCase();"/>
</h:panelGrid>
<h:panelGrid columns="3" width="100%">
<!--NOMBRES-->
<h:outputText value="Nombre*" />
<p:inputText id="datospersonalestutores_nombre" required="true" label="datospersonales_nombre"
readonly="readonly" onblur="javascript:this.value = this.value.toUpperCase();"/>
</h:panelGrid>
<h:panelGrid columns="3" width="100%">
<!--Primer Apelldo-->
<h:outputText value="Apellido*" />
<p:inputText id="datospersonalestutores_apellido" required="true" label="datospersonales_apellido"
readonly="readonly" onblur="javascript:this.value = this.value.toUpperCase();"/>
</h:panelGrid>
</h:panelGrid>
</p:fieldset>
</h:panelGrid>
</p:outputPanel>
</h:form>
Valora esta pregunta


0