Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2008
    Messaggi
    92

    jsp - problem con i javabean

    non ho mai utilizzato i javabean e volevo iniziare ad usarli, ma è insorto qualche problema. ho fatto questi file:

    il file .jsp

    <html>
    <body>
    <jsp:useBean id="info" scope="session" class="info" />
    </body>
    </html>

    e il file .java

    class info {}

    di cui ho creato il .class e l'ho messo nella stessa cartella.
    Ora però quando avvio la pagina jsp compare:

    C:\...\index_jsp.java:65: cannot find symbol
    symbol : class info
    location: class org.apache.jsp.index_jsp
    info info = null;
    C:\...\index_jsp.java:67: cannot find symbol
    symbol : class info
    location: class org.apache.jsp.index_jsp
    info = (info) _jspx_page_context.getAttribute("info", PageContext.SESSION_SCOPE);
    C:\...\index_jsp.java:69: cannot find symbol
    symbol : class info
    location: class org.apache.jsp.index_jsp
    info = new info();
    3 errors

    mi potete spiegare dove sbaglio?
    Grazie

    ps ( da quello che ho capito riesce a vedermi il .class e gli errori sono gli stessi anche se nel file java metto qualche getter e setter)

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2008
    Messaggi
    92
    non ricevo risposte perchè sono sulla strada totalmente sbagliata o perchè vi sembra giusto?

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

    Re: jsp - problem con i javabean

    Originariamente inviato da Wezen
    di cui ho creato il .class e l'ho messo nella stessa cartella.
    È qui che sbagli. I file .class "sciolti" (non in jar) devono stare sotto WEB-INF/classes/. E nota bene, le classi dei bean (o qualunque altra classe usata da una pagina JSP) devono essere in un package!!

    Questo perché una pagina JSP, compilata, dà origine ad una servlet ma il package di questa servlet non si sa quale è .... nel senso che non c'è uno standard ... dipende dal servlet container (es. Tomcat o altro).
    Quindi non puoi mettere una classe che sta nel package di "default" (cioè non ha package), perché non ci sarebbe modo di importare questa classe.

    Quindi devi usare un tuo package, esempio:

    package com.pippo;

    public class MioBean { ..... }

    e ovviamente fare in modo che il .class sia in WEB-INF/classes/com/pippo/MioBean.class
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2008
    Messaggi
    92
    Scusa ma il problema sussiste. Sto utilizzando netbeans e la cartella classes non è presente nel workspace, ho creato quindi un package dentro web-inf di nome newPackage in cui ho copiato il file class, creato dopo aver aggiunto in testa al file java "import newPackage" ma non funziona...anche con "web-inf.newPackage" il risultato non cambia. Spero di essere stato chiaro
    Avete qualche idea?

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.