ramonfo
Outubro 25, 2004, 3:15pm
#1
Ainda estou dando meus primeiros passos em JSF, e ao seguir tutorial JSF aqui do guj passo a passo, surgiu este problema no momento que tento incluir uma pessoa no banco de dados.
javax.servlet.ServletException: #{agenda.inserir}:
javax.faces.el.EvaluationException: java.lang.NullPointerException
Pelo que entendi, o objeto não foi instaciado(entendo que ele instancia o
objeto no faces-config) e apesar de varias tentativas não consegui resolver o problema. Se for possivel, peço uma ajudinha de vcs…
Obrigado pela atenção, abraços
Lilita
Outubro 25, 2004, 3:41pm
#2
Oi Ramon,
Dá uma olhadinha se você fez tudo direitinho: se a conexão com o banco está feita, se o driver do banco está no diretório lib da sua aplicação…
Beijos
Flin
Outubro 25, 2004, 6:29pm
#3
Posta teu faces-config.xml e me diz como é a url que você esta acessando.
[]'s
Fabio Lin
Lilita
Outubro 25, 2004, 7:16pm
#4
[quote=“Flin”]Posta teu faces-config.xml e me diz como é a url que você esta acessando.
[/quote]
Fábio, o faces-config.xml dele é o que tem no meu artigo! Ele está fazendo o exemplo que tem lá…
Bjinhos
O meu trabalho da facul está com o mesmo erro…
alguém sabe o que é ???
ninguem respondeu???
TaTá, vc. voltou tava com saudades viu....bjs.. :roll:
Amigos sou inciante em JSF e estou com o mesmo problema segue o erro :
HTTP Status 500 -
type Exception report
message
descriptionThe server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: #{agenda.inserir}: java.lang.NullPointerException
root cause
javax.faces.FacesException: #{agenda.inserir}: java.lang.NullPointerException
root cause
javax.faces.el.EvaluationException: java.lang.NullPointerException
root cause
java.lang.NullPointerException
note The full stack traces of the exception and its root causes are available in the Sun Java System Application Server 9.1 logs.
Segue meu arquivo faces.config.xml , esta tudo ok ate as libs do mysql estao no lib do netbeans 6
<%@ taglib uri=“http://java.sun.com/jsf/core ” prefix=“f” %>
<%@ taglib uri=“http://java.sun.com/jsf/html ” prefix=“h” %>
Exemplo JSF
Agenda
Inserir
Buscar
</h3>
</h:form>
</f:view>
</body>
Alguem tem uma luz?
Postem o código: o backing bean, .jsp (ou .xhtml) e os demais cóigos
Como pediu segue a classe backbean
import java.sql.*;
public class AgendaDB {
private String nome = blank;
private String endereco = blank;
private String cidade = blank;
private String telefone = blank;
private String result_busca =blank;
private String result_inserir=blank;
private static final String BUSCA_INVALIDA = "failure";
private static final String BUSCA_VALIDA = "success";
private static final String SUCESSO_INSERCAO = "success";
private static final String FALHA_INSERCAO = "failure";
static Connection con = null;
static Statement stm = null;
static ResultSet rs;
static private String blank ="";
public AgendaDB(){
if(con==null){
try{
Class.forName("com.mysql.jdbc.Driver");
con=
DriverManager.getConnection("jdbc:mysql://localhost:3306/pessoa","root","cee1979");
}
catch(SQLException e){
System.err.println("Erro: " +e);
con=null;
}
catch(ClassNotFoundException e){
System.out.println("Classe nao Encontrada....");
e.printStackTrace();
}
}
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getEndereco() {
return endereco;
}
public void setEndereco(String endereco) {
this.endereco = endereco;
}
public String getCidade() {
return cidade;
}
public void setCidade(String cidade) {
this.cidade = cidade;
}
public String getTelefone() {
return telefone;
}
public void setTelefone(String telefone) {
this.telefone = telefone;
}
public String inserir() {
String result_inserir=FALHA_INSERCAO;
try{
stm=con.createStatement();
stm.execute("INSERT INTO pessoa(nome,endereco,cidade,telefone) VALUES('"+nome+"','"+endereco+"','"+cidade+"','"+telefone+"')");
stm.close();
result_inserir=SUCESSO_INSERCAO;
} catch (SQLException e) {
System.err.println("Erro :" +e);
result_inserir=FALHA_INSERCAO;
}
return result_inserir;
}
public String buscar() throws SQLException{
String result_busca=BUSCA_INVALIDA;
try{
stm=con.createStatement();
rs = stm.executeQuery("SELECT * FROM pessoa WHERE nome = '"+nome+"'");
if (rs.next()){
nome= rs.getString(1);
endereco=rs.getString(2);
cidade=rs.getString(3);
telefone=rs.getString(4);
result_busca=BUSCA_VALIDA;
} else {
result_busca = BUSCA_INVALIDA;
rs.close();
stm.close();
}
} catch(SQLException e) {
System.out.println("Erro na consulta ..."+e);
}
return result_busca;
}
}
segui as infos do link http://www.guj.com.br/content/articles/jsf/jsf.pdf
faces-config.xml
<?xml version='1.0' encoding='UTF-8'?>
/buscar.jsf
success
/sucesso_busca.jsp
failure
/falha_busca.jsp
<!--Mapeamento de inserir-->
<navigation-rule>
<from-view-id>/inserir.jsf</from-view-id>
<navigation-case>
<from-outcome>success</from-outcome>
<to-view-id>/sucesso_insercao.jsp</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>failure</from-outcome>
<to-view-id>/falha_insercao.jsp</to-view-id>
</navigation-case>
</navigation-rule>
<!--configuracao managed-bean-->
<managed-bean>
<managed-bean-name>agenda</managed-bean-name>
<managed-bean-class>AgendaDB</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
kra, naum sei se pode ser o problema, nas no seu web.xml vc configurou que a extensão dos arquivos tem quer .jsf? vc está retornando um .jsp (no faces-config.xml), não sei pode ser o problema
Também estou com o mesmo problema…alguém pode ajudar?
para um null pointer exception, você está recebendo um valor nulo por parâmetro
dá uma olhada no teu código e verifica se a comunicação entre os dados está ocorrendo corretamente.
alguma coisa se perdeu no seu código e valores nulos estão chegando até os demais passos do código.
espero ter ajudado
abraços