E ai galera, estou com uma duvida cruel, rssrs
tenho um formulario com apenas 3 campos Razao social, Endereco e email, os campos Razão Social e Endereco estao com a tag required.
quando recupero as informaçoes no banco pelo dialog os campos Razao Social e Endereco que sao requierd sao mostrada no formulario o campo email nao.
Alguem sabe me responder porque???
se eu colocar a tag required no email ai mostra normal. mas nao posso fazer isto.
<ui:composition xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.prime.com.tr/ui"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
template="./default.xhtml">
<ui:define name="conteudo">
<h:form id="juridicaform" style="width:700px;margin:0 auto;padding: 10px;text-align:left;margin-top: 0px;">
<p:panel id="painel" header="Cliente Pessoa Juridica" >
<h:panelGrid id="panel1" columns="2" cellpadding="5">
<h:outputText value="Razão Social"/>
<p:inputText value="#{clientejuridicaMB.cliente.razaosocial}" size="80" required="true" requiredMessage="Razao Social Obrigatoria" />
<h:outputText value="bairro"/>
<p:inputText value="#{clientejuridicaMB.cliente.bairro}" size="80" required="true" requiredMessage="Razao Social Obrigatoria" />
<h:outputText value="Email"/>
<p:inputText value="#{clientejuridicaMB.cliente.email}" size="80" />
</h:panelGrid>
<p:commandButton value="Salvar" update="juridicaform,painel,messages" id="ajax2"
actionListener="#{clientejuridicaMB.salvar}" />
<p:commandButton value="Limpar" update="juridicaform,painel,messages" id="ajax"
actionListener="#{clientejuridicaMB.novo}" />
<p:commandButton update="painel" value="Pesquisar" onclick="buscaDialog.show()" />
<p:commandButton value="Atualizar" update="juridicaform,painel" id="btatz" ajax="false" actionListener="#{clientejuridicaMB.teste2}"/>
</p:panel>
</h:form>
<p:dialog header="Cadastrados Cadastrados" widgetVar="buscaDialog" resizable="true" id="buscaDlg"
showEffect="fade" hideEffect="explode" modal="true" width="750" height="500">
<h:form id="buscaform" style="width:700px;margin:0 auto;padding: 10px;text-align:left;margin-top: 0px;">
<h:panelGrid columns="3" cellpadding="5">
<h:outputText value="Razão Social"/>
<p:inputText value="#{clientejuridicaMB.razaosocial}" />
<p:commandButton value="Buscar" update="dataTablecli" id="btsair"
actionListener="#{clientejuridicaMB.buscaporrazao}" />
</h:panelGrid>
<p:dataTable id="dataTablecli" var="cli" value="#{clientejuridicaMB.clientes}"
emptyMessage="Nenhum registro incluido."
paginator="true" rows="5"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
rowsPerPageTemplate="4,10">
<f:facet name="header">
Clientes Cadastrados
</f:facet>
<p:column>
<f:facet name="header">
<h:outputText value="Razão Social" />
</f:facet>
<h:outputText value="#{cli.razaosocial}" />
</p:column>
<p:column>
<f:facet name="header">
<h:outputText value="CNPJ" />
</f:facet>
<h:outputText value="#{cli.cnpj}" />
</p:column>
<p:column>
<f:facet name="header">
<h:outputText value="Detalhar" />
</f:facet>
<p:commandButton value="Detalhar" update="juridicoform,messages" id="btsair" ajax="false"
oncomplete="buscaDialog.hide();">
<f:setPropertyActionListener value="#{cli}" target="#{clientejuridicaMB.clienteselecionado}" />
</p:commandButton>
</p:column>
</p:dataTable>
</h:form>
</p:dialog>
</ui:define>
</ui:composition>
Meu Bean
[code]
@ManagedBean
@SessionScoped
public class ClientejuridicaMB {
private ClienteJuridica cliente=new ClienteJuridica();
private EntityManager mgr;
private Empresa empresa;
private int repreSelecionado;
private String ufselecionada;
private int cidadeselecionada;
private long idcliente=0l;
private String razaosocial;
private Cliente clienteselecionado;
private List clientes = new ArrayList();
/** Creates a new instance of ClienteMB */
public ClientejuridicaMB() {
empresa = new Login().getUsuarioLogado().getUsuario().getEmpresa();
}
public void buscaporrazao(){
mgr = JPAUtil.getManager();
Query q = mgr.createQuery("select c from ClienteJuridica c where c.razaosocial like :razao and c.empresa=:empresa order by c.razaosocial");
q.setParameter("razao", "%"+razaosocial+"%");
q.setParameter("empresa", empresa);
clientes = q.getResultList();
}
public void novo(){
ufselecionada="";
cidadeselecionada=0;
cliente = new ClienteJuridica();
idcliente=0l;
}
public void salvar(){
String cnpj = Utilitario.onlynumber(cliente.getCnpj()) ;
if (!Utilitario.CNPJ(cnpj)){
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR,"CNPJ Invalido ", "CNPJ"));
return;
}
mgr = JPAUtil.getManager();
Query q = mgr.createQuery("select count(c) from ClienteJuridica c where c.cnpj = :cnpj and c.empresa=:empresa");
q.setParameter("cnpj", cliente.getCnpj());
q.setParameter("empresa",empresa);
long t = (Long)q.getSingleResult();
if (t>0 && idcliente==0){
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR,"Cliente Já cadastrado com este cnpj ", "CNPJ"));
return;
}
Query q2 = mgr.createQuery("select c from Cidade c where c.idibge = :ibge");
q2.setParameter("ibge", cidadeselecionada);
Cidade cid =(Cidade) q2.getSingleResult();
Usuario usr = mgr.find(Usuario.class, repreSelecionado);
mgr.getTransaction().begin();
boolean incluido=false;
if (idcliente==0){
incluido=true;
cliente.setCidade(cid);
cliente.setEmpresa(empresa);
cliente.setUsuario(usr);
mgr.persist(cliente);
}else{
cliente.setCidade(cid);
cliente.setUsuario(usr);
cliente.setId(idcliente);
mgr.merge(cliente);
}
idcliente = cliente.getId();
mgr.flush();
mgr.getTransaction().commit();
if (incluido){
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO,"Cliente Cadastrado com Sucesso!!! ", "OK"));
}else{
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO,"Cliente Alterado com Sucesso!!! ", "OK"));
}
}
public void teste2(){
idcliente = cliente.getId();
mgr = JPAUtil.getManager();
this.cliente = mgr.find(ClienteJuridica.class, idcliente);
repreSelecionado = this.cliente.getUsuario().getId();
ufselecionada = this.cliente.getCidade().getSigla();
changeuf();
cidadeselecionada = this.cliente.getCidade().getIdibge();
}
public Cliente getClienteselecionado() {
return clienteselecionado;
}
public void setClienteselecionado(Cliente clienteselecionado) {
this.clienteselecionado = clienteselecionado;
idcliente = clienteselecionado.getId();
mgr = JPAUtil.getManager();
this.cliente = (ClienteJuridica) mgr.find(Cliente.class, idcliente);
}
…
…
…
demais gets e sets
[/code]
Estou usando primefaces 2.2.1 e NetBeans.
OBS o sistema tem mais campos so coloquei os 3 para ficar mais facil de entender.
Espero que alguem possa me ajudar.
Valeu