Pessoal estou apanhando do prime faces e nao sei mais o que fazer.
Estou tentando criar uma pagina para cadastro da empresa nesta mesma tela eu queria colocar algumas separações através de panels, ou tabview, ou accordionPanel, mas parece que nenhum funciona da maneira que preciso.
Fiz a seguinte pagina abaixo que separa endereco dos dados gerais da empresa.
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:p="http://primefaces.prime.com.tr/ui"
xmlns:f="http://java.sun.com/jsf/core">
<h:head>
<title>Cadastro de Empresa</title>
</h:head>
<h:body>
<h:form>
<p:panel header="Empresa">
<h:panelGrid columns="2">
<h:outputText value="Nome "/>
<h:inputText id="txtNome"/>
<h:outputText value="Razão Social "/>
<h:inputText id="txtRazaoSocial"/>
<h:outputText value="CNPJ "/>
<h:inputText id="txtCNPJ"/>
<h:outputText value="Email "/>
<h:inputText id="txtEmail"/>
<h:outputText value="Telefone "/>
<p:inputMask id="txtTelefone" mask="(99)9999-9999"/>
</h:panelGrid>
</p:panel>
<p:panel header="Endereço">
<h:panelGrid columns="2">
<h:outputLabel value="Cep"/>
<h:panelGroup>
<p:inputMask id="txtCep" mask="99.999-999" value="#{EmpresaMB.cep}"/>
<p:commandButton value="buscar" action="#{EmpresaMB.buscarCep}" update="txtRua, txtBairro, txtEstado, txtCidade, txtPais, txtTipo" />
</h:panelGroup>
<h:outputLabel value="Tipo Logradouro"/>
<h:inputText id="txtTipo" value="#{EmpresaMB.tipoLogradouro}" disabled="true"/>
<h:outputLabel value="Logradouro"/>
<h:inputText id="txtRua" value="#{EmpresaMB.rua}" disabled="true"/>
<h:outputLabel value="Numero"/>
<h:inputText id="txtNumero" value="#{EmpresaMB.numero}"/>
<h:outputLabel value="Complemento"/>
<h:inputText id="txtComplemento" value="#{EmpresaMB.complemento}"/>
<h:outputLabel value="Bairro"/>
<h:inputText id="txtBairro" value="#{EmpresaMB.bairro}" disabled="true"/>
<h:outputLabel value="Cidade"/>
<h:inputText id="txtCidade" value="#{EmpresaMB.cidade}" disabled="true"/>
<h:outputLabel value="Estado"/>
<h:inputText id="txtEstado" value="#{EmpresaMB.estado}" disabled="true"/>
<h:outputLabel value="Pais"/>
<h:inputText id="txtPais" value="#{EmpresaMB.pais}" disabled="true"/>
</h:panelGrid>
</p:panel>
</h:form>
</h:body>
</html>
Segue abaixo o meu Managed Bean que implementei para essa tela
package mb;
import dao.LogradouroDAO;
import dto.Empresa;
import dto.Logradouro;
import java.util.ArrayList;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
@ManagedBean(name="EmpresaMB")
@RequestScoped
public class EmpresaMB {
private String cep;
private String rua;
private String bairro;
private String cidade;
private String estado;
private String pais;
private String tipoLogradouro;
private String numero;
private String complemento;
public Empresa empresa;
public EmpresaMB() throws Exception {
}
public void buscarCep() throws Exception{
//Retira a mascara do cep
String aux = cep.replace(".","");
aux = aux.replace("-","");
//Recupera os dados do logradouro
List<Logradouro> listaLogradouro = new ArrayList<Logradouro>();
LogradouroDAO daoLogradouro = new LogradouroDAO();
listaLogradouro = daoLogradouro.listar(aux);
if(listaLogradouro.size() > 0){
Logradouro logradouro = listaLogradouro.get(0);
rua = logradouro.getNome();
bairro = logradouro.getBairro().getNome();
tipoLogradouro = logradouro.getTipoLogradouro().getNome();
cidade = logradouro.getBairro().getCidade().getNome();
estado = logradouro.getBairro().getCidade().getEstado().getNome();
pais = logradouro.getBairro().getCidade().getEstado().getPais().getNome();
}
}
//gets e sets
}
O grande problema que estou enfrentando e o seguinte:
Quando clico no botão buscar nao acontece nada ja tentei debugar no netbeans e nao entra no evento.
E por incrivel que parece se eu apago o panel empresa e ficando somente o de endereco tudo funciona perfeitamente.
Ja tentei fazer com tabview e accordionPanel, e o mesmo erro acotence.
Voces poderiam me explicar o que estou fazendo errado ?
Estou utilizando os seguintes itens abaixo:
- Netbeans 6.9
- Tomcat 6
- Primefaces
- JSF 2
- JPA