Ola boa tarde gostaira se alguém pudesse ajudar
tenho esta pagina gostaria que quando clicasse no radio buton
exemplo se fosse juridico
o label mudasse para Razão Social, e iinput mask mudasse para mascara de juridico,
tentei fazer com um enum
com variaiveis local setanto valores.
abaixo a pagina
<ui:composition xmlns=“http://www.w3.org/1999/xhtml”
xmlns:h=“http://xmlns.jcp.org/jsf/html”
xmlns:f=“http://xmlns.jcp.org/jsf/core”
xmlns:ui=“http://xmlns.jcp.org/jsf/facelets”
xmlns:p=“http://primefaces.org/ui”
template="/WEB-INF/template/template.xhtml">
<ui:define name="content">
<f:metadata>
<f:viewParam name="cliente" value="#{beamCliente.cliente}" />
</f:metadata>
<h1 class="aw-page-title">Cadastro Cliente</h1>
<h:form id="frmcliente">
<div class="ui-fluid">
<p:panelGrid columns="4" columnClasses="ui-grid-col-2,ui-grid-col-1"
layout="grid" styleClass="ui-panelgrid-blank ui-fluid">
<p:outputLabel for="input" value="Código" />
<p:inputText id="input" readonly="true"
value="#{beamCliente.cliente.codigo}" />
</p:panelGrid>
<p:panelGrid columns="4" columnClasses="ui-grid-col-2,ui-grid-col-4"
layout="grid" styleClass="ui-panelgrid-blank ui-fluid">
<p:outputLabel id="t" for="cli" value="Tipo Cliente" />
<p:selectOneRadio id="cli" value="#{beamCliente.cliente.tipo} " required="true" immediate="true"
valueChangeListener="#{beamCliente.alterarlabel}" unselectable="true" layout="responsive" columns="3">
<f:selectItem itemLabel="Físico" itemValue="Físico" />
<f:selectItem itemLabel="Jurídico" itemValue="Jurídico" />
<p:ajax event="change" update="resultado,frmcliente,nome" />
</p:selectOneRadio>
</p:panelGrid>
<p:panelGrid columns="2"
columnClasses="ui-grid-col-2,ui-grid-col-4,ui-grid-col-2,ui-grid-col-4"
layout="grid" styleClass="ui-panelgrid-blank ui-fluid" id="resultado">
<p:outputLabel id="nome" value="#{beamCliente.label} " />
<p:inputText id="iclide" />
<p:outputLabel value="Cpf/Cnpj" />
<p:inputMask mask="#{beamCliente.fisico}" size="20"/>
</p:panelGrid>
</div>
</h:form>
</ui:define>
</ui:composition>
aqui a controller
package br.com.sistemagestao.controller;
import java.io.Serializable;
import javax.annotation.PostConstruct;
import javax.faces.bean.ViewScoped;
import javax.faces.event.ActionEvent;
import javax.inject.Named;
import br.com.sistemagestao.modelo.Cliente;
import br.com.sistemagestao.modelo.TipoPessoa;
@SuppressWarnings(“deprecation”)
@Named
@ViewScoped
public class BeamCliente implements ControllerPadrao, Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
private Cliente cliente;
private String fisico;
private String juridico;
private String label;
public void alterarlabel() {
label=null;
System.out.println("Teste" + cliente.getTipo());
if (isCPF()) {
label = "Nome";
fisico="999.999.999-99";
System.out.println("passou " + label);
} else {
System.out.println(cliente.getTipo());
System.out.println(label);
label = "Razão Social";
}
}
public String getLabel() {
return label;
}
public void setLabel(String label) {
this.label = label;
}
@Override
public void salvar() {
// TODO Auto-generated method stub
}
public boolean isCPF() {
cliente.setTipo("Físico");
return cliente.getTipo() != null && cliente.getTipo().equals("Físico");
}
public boolean isCNPJ() {
return cliente.getTipo() != null && cliente.getTipo().equals("Jurídico");
}
@PostConstruct
@Override
public void inicializar() {
novo();
label = "Nome/Razão Social";
isCPF();
}
@Override
public void novo() {
this.cliente = new Cliente();
}
@Override
public void pesquisar() {
// TODO Auto-generated method stub
}
@Override
public void excluir(ActionEvent evento) {
// TODO Auto-generated method stub
}
public Cliente getCliente() {
return cliente;
}
public void setCliente(Cliente cliente) {
this.cliente = cliente;
}
public TipoPessoa[] getTipoPessoa() {
return TipoPessoa.values();
}
public String getFisico() {
return fisico;
}
public void setFisico(String fisico) {
this.fisico = fisico;
}
public String getJuridico() {
return juridico;
}
public void setJuridico(String juridico) {
this.juridico = juridico;
}
}