Erro em ação padrão <jsp:useBean> e <jsp:getProperty>

4 respostas
D

Estou tentando usar a ação padrão jsp:useBean para declara uma classe e exibir a propriedade com o jsp:getProperty mas estadando erro, alguém pode dar uma olhada e ver o que esta errado.

Segue os códigos usados:

CLASSE JSP

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <jsp:useBean id="d" class="dog" scope="request" >
            <jsp:setProperty name="d" property="nome" value="Teste" />
        </jsp:useBean>
        <jsp:getProperty name="d" property="nome" />
    </body>
</html>

CLASSE USADA COMO BEAN

public class dog
{
    private String nome;
    private int idade;

    public void setIdade(int idade)
    {
        this.idade = idade;
    }

    public int getIdade()
    {
        return idade;
    }

    public void setNome(String nome)
    {
        this.nome = nome;
    }

    public String getNome()
    {
        return nome;
    }
}

Grato.

4 Respostas

B

Poste o erro que está ocorrendo, mas desconfio que está faltando você colocar o nome totalmente qualificado(pacote + nome da classe) no atributo class
da sua tag useBean …

D

Segue o erro, e não coloquei o nome total da classe pois ela esta fora de qualquer pacote, esta no diretorio defaul (src/java/dog.java).

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: Unable to compile class for JSP:

An error occurred at line: 13 in the jsp file: /classeJSP.jsp

dog cannot be resolved to a type

10:         JSP Page

11:     

12:     

13:         <jsp:useBean id=“d” class=“dog” scope=“request” >

14:             <jsp:setProperty name=“d” property=“nome” value=“Teste” />

15:         </jsp:useBean>

16:         <jsp:getProperty name=“d” property=“nome” />
An error occurred at line: 13 in the jsp file: /classeJSP.jsp

dog cannot be resolved to a type

10:         JSP Page

11:     

12:     

13:         <jsp:useBean id=“d” class=“dog” scope=“request” >

14:             <jsp:setProperty name=“d” property=“nome” value=“Teste” />

15:         </jsp:useBean>

16:         <jsp:getProperty name=“d” property=“nome” />
An error occurred at line: 13 in the jsp file: /classeJSP.jsp

dog cannot be resolved to a type

10:         JSP Page

11:     

12:     

13:         <jsp:useBean id=“d” class=“dog” scope=“request” >

14:             <jsp:setProperty name=“d” property=“nome” value=“Teste” />

15:         </jsp:useBean>

16:         <jsp:getProperty name=“d” property=“nome” />
An error occurred at line: 16 in the jsp file: /classeJSP.jsp

dog cannot be resolved to a type

13:         <jsp:useBean id=“d” class=“dog” scope=“request” >

14:             <jsp:setProperty name=“d” property=“nome” value=“Teste” />

15:         </jsp:useBean>

16:         <jsp:getProperty name=“d” property=“nome” />

17:     

18:
Stacktrace:

org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)

org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)

org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:439)

org.apache.jasper.compiler.Compiler.compile(Compiler.java:334)

org.apache.jasper.compiler.Compiler.compile(Compiler.java:312)

org.apache.jasper.compiler.Compiler.compile(Compiler.java:299)

org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:586)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)

javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)

classeServlet.processRequest(classeServlet.java:18)

classeServlet.doPost(classeServlet.java:46)

javax.servlet.http.HttpServlet.service(HttpServlet.java:637)

javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)

note The full stack trace of the root cause is available in the Apache Tomcat/6.0.20 logs.

B

O interessante seria você colocar sua classe em um pacote e testar novamente…

Mais detalhes na documentação:

http://java.sun.com/products/jsp/tags/11/syntaxref11.fm14.html

D

Mesmo depois de tanto tempo, vou postar o que eu acho que esta dando erro para ajudar os que virão.

Sua Tag jsp:useBean está sendo fechada antes da tag jsp:getProperty talvez esse tenha sido o erro. :smiley:

Criado 22 de junho de 2010
Ultima resposta 25 de out. de 2012
Respostas 4
Participantes 3