Como armazenar a variável de um Bean na JSP?

Pessoal estou tendo algumas dificuldades porque preciso fazer uma validação dos dados que foram inseridos através do form e enviados para a JSP.

Para tanto, criei uma método no Bean (ok, já sei que no Bean só é vem visto os set e os gets da vida) que valida os dados e retorna um valor booleano.

O problema é, como acessar este método a partir da JSP? Ou então, como acessar uma variável e armazenar ela no JSP para que eu possa fazer a manipulação dos dados?

Por exemplo, preciso de algo que no java normal se representaria da seguinte forma…

boolean teste = meuBean.getValidacao();

ou então,

if(meuBean.variavelValida == tanto){
faca tal coisa
}

Obrigado.

Tentou utilizar jstl no seu jsp? Se não tentou, faz o teste colocando no topo do jsp a declaração da taglib:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

Depois você pode fazer algo como isto:

<c:if test="${seuBean.seuMetodo}">
	Faz alguma coisa
</c:if>

Supondo que seu Método retorne um booleano.

Detalhe:…para usar jstl você precisa dos jar’s jstl-impl-1.2.jar e jstl-1.2.jar no classpath da sua aplicação.

Cara voce pode usar algo assim com taglibs e jstl:

depois de ter declarado a tag lib <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

voce pode fazer a instancia de um objeto like this:

<jsp:useBean id="contact" class="br.com.t1.phonebook.Contact"/>

e depois chamar o metodo com expression language:

${contact.name} // que vai chamar o seu GetName ou o metodo que vc quiser no bean...

flw abs

Opa amigo eu tentei do jeito que disse, ficou da seguinte forma…

<c:if test="${dataBaseRegister.validate}"> <jsp:forward page="validateTrue.jsp" /> </c:if>

Aqui está o erro retornado pelo Apache:

org.apache.jasper.JasperException: An exception occurred processing JSP page /registerBean.jsp at line 25

22:
23:


24:
25: <c:if test="${dataBaseRegister.validate}">
26: <jsp:forward page=“validateTrue.jsp” />
27: </c:if>
28:

Este código eu devo por solto no body mesmo né? sem o <%%>…

Obrigado pela ajuda…

Será se você tem mais alguma dica?

Eu não consigo acessar o método né? Apenas a variável, pelo menos foi isso que ficou aparente quando coloquei o “meuBean.”. Nenhum método apareceu, somente as variáveis.

Este é o método que eu tenho na minha Bean

[code]boolean valido = true;
String relatorio = “Os seguintes erros foram encontrados no preenchimento do formulario…\n\n”;
public boolean getValidate(){

    if(senha.equals(senha2) == false){
        valido = false;
        relatorio += "Senhas inseridas incompativeis...\n";
    }

    if(cpf == null){
        valido = false;
        relatorio += "Nenhum CPF foi inserido...\n";
    }

    return valido;
}[/code]

A idéia é acessar esse método da JSP, ver se a verificação é positiva, se for, encaminhar para uma página, se não for, encaminhar para outra página…

Abradeço novamente…

[quote=thiagotn]Tentou utilizar jstl no seu jsp? Se não tentou, faz o teste colocando no topo do jsp a declaração da taglib:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

Depois você pode fazer algo como isto:

<c:if test="${seuBean.seuMetodo}">
	Faz alguma coisa
</c:if>

Supondo que seu Método retorne um booleano.

Detalhe:…para usar jstl você precisa dos jar’s jstl-impl-1.2.jar e jstl-1.2.jar no classpath da sua aplicação.[/quote]

Muito obrigado por ter me ajudado, mas ainda não rolou, será se poderia olhar a resposta que dei ao parceiro de cima? Talvez esclareça melhor a idéia que preciso.

Abraços…

[quote=thiagobernardo_si]Cara voce pode usar algo assim com taglibs e jstl:

depois de ter declarado a tag lib <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

voce pode fazer a instancia de um objeto like this:

<jsp:useBean id="contact" class="br.com.t1.phonebook.Contact"/>

e depois chamar o metodo com expression language:

${contact.name} // que vai chamar o seu GetName ou o metodo que vc quiser no bean...

flw abs[/quote]

Primeiramente voce deve baixar a biblioteca do jstl https://jstl.dev.java.net/

Depois no comeco do seu codigo use :

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

Depois instancia sua classe que tem o metodo

<jsp:useBean id="instanciaSuaClasse" class="br.com.SuaClasse"/>

depois eh so chamar o metodo com:

${instanciaSuaClasse.seuMetodo}

Da uma olhada na aposta do curso da caelum fj21 la tem alguns exemplos de como fazer caso nao consiga…

abs

eu tô tentando fazer isso, mas na linha:

<jsp:useBean id="instanciaSuaClasse" class="br.com.SuaClasse"/>  

dah o erro no caminho pra minha classe fala q não foi definida!!!
o q é q tah errado?