Ajuda com erro JSF. Urgente

5 respostas
ACDias

Toda vez q eu coloco um combo box no meu form essa porcaria não chama o método do commandbutton!

Combo e CommandButton:
<h:selectOneMenu value="#{alunoController.aluno.cd_curso}">
	 <f:selectItems value="#{cursoController.listCombo}"/>
</h:selectOneMenu>
<h:commandButton action="#{alunoController.insere}" value="Cadastrar" />
Gerador de Combo:
public Map<String, Integer> getListCombo() throws SQLException
	{

		CursoDAO dao = new CursoDAO();

		TreeMap<String, Integer> map = new TreeMap<String, Integer>();
		for (Curso cd : dao.getList())
		{
			map.put(cd.getNome(),cd.getCd_curso());
		}
		return map;
	}
Alguém sabe pq está ocorrendo isso? Sempre q eu clico no botão de submeter não acontece nada! ele num dá erro, num cadastra, num faz nada mesmo, fica na mesma tela; é só eu tirar o combobox do form e ele funciona normalmente! nunca vi isso e não tenho idéia do q possa ser.

Obrigado

5 Respostas

F

Estranho… Posta o html gerado e o codigo do bean.

ACDias
HTML (eu tirei os "<" do código pq o fórum não aceita postar html)
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;
html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;
	xmlns:h=&quot;http://java.sun.com/jsf/html&quot; lang=&quot;pt-BR&quot;&gt
head&gt
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=iso-8859-1&quot; /&gt;
title&gtRegistrar Usuário&lt;/title&gt;
/head&gt

body&gt

	form id=&quot;_id0&quot; method=&quot;post&quot; action=&quot;/elearning/registra.jsf;jsessionid=6DEA75A9029C1A7956AC203523E2E65F&quot; enctype=&quot;application/x-www-form-urlencoded&quot;&gt

		h3&gtstrong&gtCadastro de Alunos&lt;/strong&gt;&lt;/h3&gt;

		table&gt
tbody&gt
tr&gt
td&gtNome: &lt;/td&gt;
td&gt&lt;input type=&quot;text&quot; name=&quot;_id0:_id3&quot; style=&quot; height : 19px;&quot; /&gt;&lt;/td&gt;
/tr&gt
tr&gt
td&gtNome de Usu&aacute;rio: &lt;/td&gt;
td&gt&lt;input type=&quot;text&quot; name=&quot;_id0:_id5&quot; style=&quot; height : 19px;&quot; /&gt;&lt;/td&gt;
/tr&gt
tr&gt
td&gtSenha: &lt;/td&gt;
td&gt&lt;input type=&quot;password&quot; name=&quot;_id0:_id7&quot; value=&quot;&quot; style=&quot; height : 19px;&quot; /&gt;&lt;/td&gt;
/tr&gt
tr&gt
td&gtConfirma&ccedil;&atilde;o de Senha: &lt;/td&gt;
td&gt&lt;input type=&quot;password&quot; name=&quot;_id0:_id9&quot; value=&quot;&quot; style=&quot; height : 19px;&quot; /&gt;&lt;/td&gt;
/tr&gt
tr&gt
td&gtTipo de Logradouro: &lt;/td&gt;
td&gt&lt;input type=&quot;text&quot; name=&quot;_id0:_id11&quot; style=&quot; height : 19px;&quot; /&gt;&lt;/td&gt;
/tr&gt
tr&gt
td&gtLogradouro: &lt;/td&gt;
td&gt&lt;input type=&quot;text&quot; name=&quot;_id0:_id13&quot; style=&quot; height : 19px;&quot; /&gt;&lt;/td&gt;
/tr&gt
tr&gt
td&gtN&uacute;mero: &lt;/td&gt;
td&gt&lt;input type=&quot;text&quot; name=&quot;_id0:_id15&quot; value=&quot;0&quot; style=&quot; height : 19px;&quot; /&gt;&lt;/td&gt;
/tr&gt
tr&gt
td&gtComplemento: &lt;/td&gt;
td&gt&lt;input type=&quot;text&quot; name=&quot;_id0:_id17&quot; style=&quot; height : 19px;&quot; /&gt;&lt;/td&gt;
/tr&gt
tr&gt
td&gtBairro: &lt;/td&gt;
td&gt&lt;input type=&quot;text&quot; name=&quot;_id0:_id19&quot; style=&quot; height : 19px;&quot; /&gt;&lt;/td&gt;
/tr&gt
tr&gt
td&gtCidade: &lt;/td&gt;
td&gt&lt;input type=&quot;text&quot; name=&quot;_id0:_id21&quot; style=&quot; height : 19px;&quot; /&gt;&lt;/td&gt;
/tr&gt
tr&gt
td&gtUF: &lt;/td&gt;
td&gt&lt;input type=&quot;text&quot; name=&quot;_id0:_id23&quot; style=&quot; height : 19px;&quot; /&gt;&lt;/td&gt;
/tr&gt
tr&gt
td&gtCurso que deseja realizar: &lt;/td&gt;
td&gt&lt;select name=&quot;_id0:_id25&quot; size=&quot;1&quot;&gt;	&lt;option value=&quot;1&quot;&gt;Banco de Dados&lt;/option&gt;
/select&gt&lt;/td&gt;
/tr&gt
/tbody&gt
/table&gt

		input type=&quot;submit&quot; name=&quot;_id0:_id27&quot; value=&quot;Cadastrar&quot; /&gt
	input type=&quot;hidden&quot; name=&quot;_id0&quot; value=&quot;_id0&quot; /&gt&lt;/form&gt;

/body&gt
/html&gt
Bean01:
package elearn.mb;

import java.sql.SQLException;

import elearn.beans.Aluno;
import elearn.beans.Bairro;
import elearn.beans.Cidade;
import elearn.beans.Endereco;
import elearn.beans.Log;
import elearn.beans.Perfil;
import elearn.beans.TLog;
import elearn.beans.User;
import elearn.dao.AlunoDAO;
import elearn.dao.BairroDAO;
import elearn.dao.CidadeDAO;
import elearn.dao.EnderecoDAO;
import elearn.dao.LogDAO;
import elearn.dao.PerfilDAO;
import elearn.dao.TLogDAO;
import elearn.dao.UserDAO;

public class AlunoController
{

	private Endereco end;

	private Aluno aluno = new Aluno();

	private Bairro bairro;

	private Cidade cidade;

	private Log log;

	private TLog tlog;

	private User user;
	
	private Perfil perfil = new Perfil();

	public Perfil getPerfil()
	{
		if(perfil == null)
			perfil = new Perfil();
		return perfil;
	}

	public void setPerfil(Perfil perfil)
	{
		this.perfil = perfil;
	}

	public Aluno getAluno()
	{
		if (aluno == null)
			aluno = new Aluno();
		return aluno;
	}

	public void setAluno(Aluno aluno)
	{
		this.aluno = aluno;
	}

	public Bairro getBairro()
	{
		if (bairro == null)
			bairro = new Bairro();
		return bairro;
	}

	public void setBairro(Bairro bairro)
	{
		this.bairro = bairro;
	}

	public Cidade getCidade()
	{
		if (cidade == null)
			cidade = new Cidade();
		return cidade;
	}

	public void setCidade(Cidade cidade)
	{
		this.cidade = cidade;
	}

	public Endereco getEnd()
	{
		if (end == null)
			end = new Endereco();
		return end;
	}

	public void setEnd(Endereco end)
	{
		this.end = end;
	}

	public Log getLog()
	{
		if (log == null)
			log = new Log();
		return log;
	}

	public void setLog(Log log)
	{
		this.log = log;
	}

	public TLog getTlog()
	{
		if (tlog == null)
			tlog = new TLog();
		return tlog;
	}

	public void setTlog(TLog tlog)
	{
		this.tlog = tlog;
	}

	public User getUser()
	{
		if (user == null)
			user = new User();
		return user;
	}

	public void setUser(User user)
	{
		this.user = user;
	}

	public String insere()
	{
		try
		{
			CidadeDAO cdao = new CidadeDAO();
			cdao.add(cidade);
			end.setCd_cidade(cdao.getLastInsert());
			System.out.println(&quot;cidade funcionou!&quot;);
			BairroDAO bdao = new BairroDAO();
			bdao.add(bairro);
			end.setCd_bairro(bdao.getLastInsert());
			System.out.println(&quot;bairro funcionou!&quot;);
			LogDAO ldao = new LogDAO();
			ldao.add(log);
			end.setCd_log(ldao.getLastInsert());
			System.out.println(&quot;log funcionou!&quot;);
			TLogDAO tldao = new TLogDAO();
			tldao.add(tlog);
			end.setCd_tlog(tldao.getLastInsert());
			System.out.println(&quot;tlog funcionou!&quot;);
			EnderecoDAO edao = new EnderecoDAO();
			edao.add(end);
			user.setCd_end(edao.getLastInsert());
			System.out.println(&quot;endereco funcionou!&quot;);
			PerfilDAO pdao = new PerfilDAO();
			perfil.setNome(&quot;aluno&quot;);
			perfil.setUser_name(user.getUser_name());
			pdao.add(perfil);
			user.setCd_perfil(pdao.getLastInsert());
			System.out.println(&quot;perfil funcionou!&quot;);
			UserDAO udao = new UserDAO();
			udao.add(user);
			aluno.setCd_user(udao.getLastInsert());
			System.out.println(&quot;user funcionou!&quot;);
			AlunoDAO adao = new AlunoDAO();
			adao.add(aluno);
		} catch (SQLException e)
		{
			e.printStackTrace();
			System.out.print(&quot;Erro ao cadastrar ao banco!&quot;);
			return &quot;fail&quot;;
		}
		System.out.println(&quot;funcionou!&quot;);
		return &quot;success&quot;;
	}

}
Bean02:
package elearn.mb;

import java.sql.SQLException;
import java.util.Map;
import java.util.TreeMap;

import elearn.beans.Curso;
import elearn.dao.CursoDAO;

public class CursoController
{
	private Curso curso;

	public Curso getCurso()
	{
		if (curso == null)
			curso = new Curso();
		return curso;
	}

	public void setCurso(Curso curso)
	{
		this.curso = curso;
	}

	public String insere()
	{
		try
		{
			curso.setHtml_curso(&quot;/html/&quot;+curso.getHtml_curso());
			CursoDAO dao = new CursoDAO();
			dao.add(curso);
		} catch (SQLException e)
		{
			return &quot;fail&quot;;
		}
		return &quot;success&quot;;
	}

	public Map&lt;String, Integer&gt; getListCombo() throws SQLException
	{

		CursoDAO dao = new CursoDAO();
		TreeMap&lt;String, Integer&gt; map = new TreeMap&lt;String, Integer&gt;();
		for (Curso cd : dao.getList())
		{
			map.put(cd.getNome(),cd.getCd_curso());
		}
		return map;
	}
}
registra.jsp
&lt;%@ taglib uri=&quot;http://java.sun.com/jsf/html&quot; prefix=&quot;h&quot;%&gt;
&lt;%@ taglib uri=&quot;http://java.sun.com/jsf/core&quot; prefix=&quot;f&quot;%&gt;

&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;
	xmlns:h=&quot;http://java.sun.com/jsf/html&quot; lang=&quot;pt-BR&quot;&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=iso-8859-1&quot; /&gt;
&lt;title&gt;Registrar Usuário&lt;/title&gt;
&lt;/head&gt;

&lt;body&gt;
&lt;f:view&gt;
	&lt;h:form&gt;
		&lt;h3&gt;&lt;strong&gt;Cadastro de Alunos&lt;/strong&gt;&lt;/h3&gt;
		&lt;h:panelGrid columns=&quot;2&quot;&gt;
			&lt;h:outputText value=&quot;Nome: &quot; /&gt;
			&lt;h:inputText value=&quot;#{alunoController.user.nome}&quot;
				style=&quot; height : 19px;&quot; /&gt;
			&lt;h:outputText value=&quot;Nome de Usuário: &quot; /&gt;
			&lt;h:inputText value=&quot;#{alunoController.user.user_name}&quot;
				style=&quot; height : 19px;&quot; /&gt;
			&lt;h:outputText value=&quot;Senha: &quot; /&gt;
			&lt;h:inputSecret value=&quot;#{alunoController.user.pass}&quot;
				style=&quot; height : 19px;&quot; /&gt;
			&lt;h:outputText value=&quot;Confirmação de Senha: &quot; /&gt;
			&lt;h:inputSecret style=&quot; height : 19px;&quot; /&gt;
			&lt;h:outputText value=&quot;Tipo de Logradouro: &quot; /&gt;
			&lt;h:inputText value=&quot;#{alunoController.tlog.tlog}&quot;
				style=&quot; height : 19px;&quot; /&gt;
			&lt;h:outputText value=&quot;Logradouro: &quot; /&gt;
			&lt;h:inputText value=&quot;#{alunoController.log.log}&quot;
				style=&quot; height : 19px;&quot; /&gt;
			&lt;h:outputText value=&quot;Número: &quot; /&gt;
			&lt;h:inputText value=&quot;#{alunoController.end.num}&quot;
				style=&quot; height : 19px;&quot; /&gt;
			&lt;h:outputText value=&quot;Complemento: &quot; /&gt;
			&lt;h:inputText value=&quot;#{alunoController.end.comp}&quot;
				style=&quot; height : 19px;&quot; /&gt;
			&lt;h:outputText value=&quot;Bairro: &quot; /&gt;
			&lt;h:inputText value=&quot;#{alunoController.bairro.bairro}&quot;
				style=&quot; height : 19px;&quot; /&gt;
			&lt;h:outputText value=&quot;Cidade: &quot; /&gt;
			&lt;h:inputText value=&quot;#{alunoController.cidade.cidade}&quot;
				style=&quot; height : 19px;&quot; /&gt;
			&lt;h:outputText value=&quot;UF: &quot; /&gt;
			&lt;h:inputText value=&quot;#{alunoController.end.uf}&quot;
				style=&quot; height : 19px;&quot; /&gt;
			&lt;h:outputText value=&quot;Curso que deseja realizar: &quot; /&gt;
			&lt;h:selectOneMenu value=&quot;#{alunoController.aluno.cd_curso}&quot;&gt;
				&lt;f:selectItems value=&quot;#{cursoController.listCombo}&quot;/&gt;
			&lt;/h:selectOneMenu&gt;
		&lt;/h:panelGrid&gt;
		&lt;h:commandButton action=&quot;#{alunoController.insere}&quot; value=&quot;Cadastrar&quot; /&gt;
	&lt;/h:form&gt;
&lt;/f:view&gt;
&lt;/body&gt;
&lt;/html&gt;
F

ë… teu submit buton está renderizado errado mesmo.

Faz um teste, troca pra command link e v6e se o link gerado (no html) tem código javascript no onclick.

Qual versão e implementação do jsf vc está usando?

ACDias

Estou usando “JSF 1.1.01 - Reference Implementation”
Sim tem código javascript, ele gera o submit, porém deu a mesma coisa! num faz nada!

ACDias

Eu tentei trocar o combo box por radio buttons mas deu a mesma coisa! o q pode ser isso?

Criado 24 de novembro de 2006
Ultima resposta 26 de nov. de 2006
Respostas 5
Participantes 2