Erro java.lang.NullPointerException para recuperar valor de textfield JSF
3 respostas
J
jeffdapaz
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.
Abraçosss!
J
jeffdapaz
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! :)
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.
Desde já agradeço pela sua ajuda!
Abraços!!!
thimor
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:
publicclassSeuBean{privateStringtxtNome;publicvoidsetTxtNome(Strings){this.txtNome=s;}publicStringgetTxtNome(){returntxtNome}publicStringbtn_cadastrar_action()throwsSQLException,Exception{Contacont=newConta();try{cont.setNome(getTxtNome());cont.setLogin(getTxtLogin());cont.setSenha(getTxtSenha());cont.setEstabelecimento(getTxtEstabelecimento());Stringaux=cont.cadastrar_login();getLbl_imprimir().setText(aux);}catch(Exceptione){JOptionPane.showMessageDialog(null,e);//Isso nao existe em JSF isso é DESKTOP//No minimo o codigo abaixoFacesMessagefacesMsg=newFacesMessage(FacesMessage.SEVERITY_ERROR,e.getLocalizedMessage,e.getLocalizedMessage);FacesContext.getCurrentInstance().addMessage(null,facesMsg);}returnnull;}