Visualizzazione dei risultati da 1 a 6 su 6

Discussione: [JSP] Primi passi

  1. #1
    Utente di HTML.it L'avatar di Lomio
    Registrato dal
    Jul 2010
    Messaggi
    160

    [JSP] Primi passi

    Ciao a tutti, sto muovendo i primi passi nella programmazione lato server di java e mi sono già incasinato non poco.

    Uso Eclipse, ho installato il plugin di tomcat e scrivendo le prime righe in jsp tutto ok, ma appena ho provato a far funzionare l'esempio di InfoUtente con i java bean mi sono ritrovato spiazzato.
    Ho creato un progetto(Dynamic Web Project) e nella cartella Java Resources:src ho creato la mia classe InfoUtente nel package di default.Il file .jsp invece è all'interno della cartella WEB-INF e quando prova a far partire il progetto il risultato è questo.

    codice:
    org.apache.jasper.JasperException: Unable to compile class for JSP: 
    
    An error occurred at line: 11 in the jsp file: /prova.jsp
    InfoUtente cannot be resolved to a type
    8: <title>Insert title here</title>
    9: </head>
    10: <body>
    11: <jsp:useBean id="utente" scope="session" class="InfoUtente"/>
    12: <jsp:setProperty name="utente" property="nome" value="Zina& tram"/>
    13: <%
    14: utente.setNome("Zina& tram");
    
    
    An error occurred at line: 11 in the jsp file: /prova.jsp
    InfoUtente cannot be resolved to a type
    8: <title>Insert title here</title>
    9: </head>
    10: <body>
    11: <jsp:useBean id="utente" scope="session" class="InfoUtente"/>
    12: <jsp:setProperty name="utente" property="nome" value="Zina& tram"/>
    13: <%
    14: utente.setNome("Zina& tram");
    
    
    An error occurred at line: 11 in the jsp file: /prova.jsp
    InfoUtente cannot be resolved to a type
    8: <title>Insert title here</title>
    9: </head>
    10: <body>
    11: <jsp:useBean id="utente" scope="session" class="InfoUtente"/>
    12: <jsp:setProperty name="utente" property="nome" value="Zina& tram"/>
    13: <%
    14: utente.setNome("Zina& tram");
    
    
    An error occurred at line: 17 in the jsp file: /prova.jsp
    InfoUtente cannot be resolved to a type
    14: utente.setNome("Zina& tram");
    15: utente.setEmail("ciao@dom.it");
    16: %>
    17: <jsp:getProperty name="utente" property="nome"/>
    18: <% out.println(utente.getNome());
    19: out.println(utente.riassunto()); %>
    20: <% utente.aggiornaPV();
    
    
    An error occurred at line: 17 in the jsp file: /prova.jsp
    InfoUtente cannot be resolved to a type
    14: utente.setNome("Zina& tram");
    15: utente.setEmail("ciao@dom.it");
    16: %>
    17: <jsp:getProperty name="utente" property="nome"/>
    18: <% out.println(utente.getNome());
    19: out.println(utente.riassunto()); %>
    20: <% utente.aggiornaPV();
    
    
    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:443)
    	org.apache.jasper.compiler.Compiler.compile(Compiler.java:362)
    	org.apache.jasper.compiler.Compiler.compile(Compiler.java:340)
    	org.apache.jasper.compiler.Compiler.compile(Compiler.java:327)
    	org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:594)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:316)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    Vi chiederei gentilmente un aiuto...grazie ciao
    La legge e l'ordine saranno rispettati solo quando si concederà la giustizia a tutti indistintamente.

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [JSP] Primi passi

    Originariamente inviato da Lomio
    codice:
    InfoUtente cannot be resolved to a type
    
    11: <jsp:useBean id="utente" scope="session" class="InfoUtente"/>
    InfoUtente è in un package? Quel nome in class deve essere completamente "qualificato". Inoltre la classe non deve essere "astratta" e deve avere un costruttore pubblico no-arg (senza argomenti).
    Questo è quello che richiede useBean per il class.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it L'avatar di Lomio
    Registrato dal
    Jul 2010
    Messaggi
    160
    grazie per la risposta!!!

    codice:
    public class InfoUtente {
      private String nome = null;
      private String email = null;
      private int pagineViste;
    
      public InfoUtente() { pagineViste=0; }
      public void aggiornaPV() { pagineViste++; }
      
      public int getPagineViste(){ return pagineViste; }
      
      public void setNome(String value) { nome = value; }
      public String getNome() { return nome; }
    
      public void setEmail(String value) { email = value; }
    
      public String getEmail() { return email; }
    
      public String riassunto(){
        String riassunto = null;
        riassunto = "Il nome dell'utente è"+nome+","; 
        riassunto+= "il suo indirizzo e-mail è: "+email;
        riassunto+= " e ha visitato "+pagineViste+" del sito";
        return riassunto;
      }
    
    }//InfoUtente
    Questa è la classe situata nel package di default
    La legge e l'ordine saranno rispettati solo quando si concederà la giustizia a tutti indistintamente.

  4. #4
    Utente di HTML.it L'avatar di Lomio
    Registrato dal
    Jul 2010
    Messaggi
    160
    RISOLTO!!!!!!!!!

    ho messo la mia classe in un package non di default e tutto funziona correttamente
    La legge e l'ordine saranno rispettati solo quando si concederà la giustizia a tutti indistintamente.

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Lomio
    RISOLTO!!!!!!!!!

    ho messo la mia classe in un package non di default e tutto funziona correttamente
    Sì, perché le JSP sono compilate alla fin fine in Servlet e la classe della servlet è messa in un package, che tra l'altro è dipendente dal "container".
    Ma il punto è che essendo la servlet della JSP comunque in un certo package, allora non può usare/importare nulla del package di "default"!
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  6. #6
    Utente di HTML.it L'avatar di Lomio
    Registrato dal
    Jul 2010
    Messaggi
    160
    Grazie andbin, sempre disponibile!
    La legge e l'ordine saranno rispettati solo quando si concederà la giustizia a tutti indistintamente.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.