Estou tentando recuperar valor de um campo textfield em um projeto JSF, mas o java sempre retorna o erro java.lang.NullPointerException.
O que eu estou fazendo de errado?
Muita calma nessa hora, você está utilizando JSF (Java Server Faces) e quer pegar valores de um textfield, na sua página web e está ocasionando este erro, é isso?
Porque se for amigo, não vai conseguir mesmo. Já pensou em utilizar Beans?
Abraços!
Desculpas, não vi que utiliza label e etc, então está usando Swing mesmo, certo?
Veja a linha exata que o ocorre o NullPointerException, com absoluta certeza está dando get em um campo cujo valor está nulo.
[quote=nel]Muita calma nessa hora, você está utilizando JSF (Java Server Faces) e quer pegar valores de um textfield, na sua página web e está ocasionando este erro, é isso?
Porque se for amigo, não vai conseguir mesmo. Já pensou em utilizar Beans?
Abraços!
Desculpas, não vi que utiliza label e etc, então está usando Swing mesmo, certo?
Veja a linha exata que o ocorre o NullPointerException, com absoluta certeza está dando get em um campo cujo valor está nulo.
Abraçosss! :)[/quote]
Não estou utilizando Swing, quando se usa JSF (Java Server Faces) é possível adicionar componentes assim como no swing, mas esses componentes são adicionados numa página JSP.
A minha intenção é recuperar o valor digitado pelo usuário num campo textfield q adicionei através do JSF.
Como no código q postei, eu declaro esse campo como TextField e depois eu encapsulo para criar o get e o set. E o erro se dá examente quando eu uso o get do campo TextField, aí o java me retorna o erro java.lang.NullPointerException.
Estava usando como exemplo um outro projeto q vi pela net, e ele usa dessa forma para conseguir recuperar os caracteres digitados no campo.
olhe se no faces-config.xml se o Bean que voce criou esta com o escopo de sessao, pelo que voce esta falando ele provavelemte esta com escopo request. e o seu codigo tem que estar mais ou menos assim:
public class SeuBean {
private String txtNome;
public void setTxtNome(String s) {
this.txtNome = s;
}
public String getTxtNome() {
return txtNome
}
public String btn_cadastrar_action() throws SQLException, Exception {
Conta cont= new Conta();
try{
cont.setNome(getTxtNome());
cont.setLogin(getTxtLogin());
cont.setSenha(getTxtSenha());
cont.setEstabelecimento(getTxtEstabelecimento());
String aux = cont.cadastrar_login();
getLbl_imprimir().setText(aux);
}
catch(Exception e)
{
JOptionPane.showMessageDialog(null, e); //Isso nao existe em JSF isso é DESKTOP
//No minimo o codigo abaixo
FacesMessage facesMsg = new FacesMessage(FacesMessage.SEVERITY_ERROR, e.getLocalizedMessage, e.getLocalizedMessage);
FacesContext.getCurrentInstance().addMessage(null, facesMsg);
}
return null;
}