Newsgroup: it.comp.java
Titolo: Perchè questo error e?

Ciao ragazzi!
Ho un problemino con Tomcat e i Bean... 
Da una pagina .jsp richiamo un bean semplice semplice ma Tomcat mi da
un errore di compilaizone....
Posto un pò di codice per farvi capire di cosa parlo:
ecco la pagina .jsp:
<%@ page contentType="text/html; charset=iso-8859-1" language="java"
import="java.sql.*" errorPage="" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"
http://www.w3.org/TR/html4/loose.dtd
">
<html>
<head>
<title>Il mio primo Bean</title>
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1">
</head>
<body>
Ciao! Questo è il primo  JavaBean!!
<hr>
 
<jsp:useBean id="contatore"  scope="session" class="Bean" /> -->
<jsp:setProperty name="contatore" property="count" param="count"/>-->
 <% //out.println("Il contatore vale:  "+ contatore.getCount()+
"<br>"); %>-->
</body>
</html>
ecco il bean:
import java.io.Serializable;
public class Contatore implements Serializable{
		 int count = 1;
                public Contatore() { }
	  public int getCount() {
		  return this.count;
	  }
	  public void setCount(int count) {
		  this.count = count;
	  }
}
 ed ecco l'errore che ricevo:
org.apache.jasper.JasperException: Unable to compile class for JSP
An error occurred at line: 13 in the jsp file: /index.jsp
Generated servlet error:
    [javac] Compiling 1 source file
C:\Programmi\Apache Group\Tomcat
4.1\work\Standalone\localhost\pure\index_jsp.java:52: cannot resolve
symbol
symbol  : class Bean 
location: class org.apache.jsp.index_jsp
      Bean contatore = null;
      ^
Eppure ho creato una cartella myBean, ho settato nel file server.xml
il context:
<Context path="/myBean" docBase="myBean" debug="0" reloadable="true"
crossContext="true"/>
e questa è la struttura:
/myBean/index.jsp
/myBean/Web-inf/classes/Contatore.class
Perchè il tutto non funziona?

Ciao, alex!
Il giorno 23/03/2004 alle ore 11:39 hai scritto:
 a> Perchè il tutto non funziona?
Metti la classe Contatore in un package ('package mypackage' ad esempio).
Bye
-- 
Marco Maccaferri
MaccaSoft - 
http://www.maccasoft.com

Bye
Ciao Marco. 
Ho messo nel bean:
 
package counter;
ho compilato l'ho messo nella cartella
/myBean/web-inf/classes/counter/Counter.class
ma continua a darmi errore... anzi adesso mi da il seguente errore:
org.apache.jasper.JasperException: Counter
	at
org.apache.jasper.compiler.BeanRepository.getBeanType(BeanRepository.java:183)
	at
org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:676)
	at
ecc. ecc.
Se non riesco a risolvere questo problema non posso andare avanti
nello studio delle applicazioni web... ma proprio non riesco a capire
dov'è l'errore.
Nessun'altra idea?
ps.grazie comunque.

Ciao, alex!
Il giorno 23/03/2004 alle ore 16:34 hai scritto:
 a> ho compilato l'ho messo nella cartella
 a> /myBean/web-inf/classes/counter/Counter.class
 a> ma continua a darmi errore... anzi adesso mi da il seguente errore:
 a>
 a> org.apache.jasper.JasperException: Counter
Nell'altro messaggio la classe si chiamava Contatore, non puoi cambiare nome
al file .class. Poi hai messo il nome completo di package nel tag useBean ?
<jsp:useBean id="contatore"  scope="session" class="counter.Counter" />
Poi vedo ora che nel tag che hai riportato nel primo messaggio hai usato
Bean anziche' Contatore, devi usare il nome della classe altrimenti com fa a
trovarlo ?


trovarlo ?
Ho risolto, grazie molte. Avevo fatto tutto giusto ma avevo
dimenticato di mettere il nome completo di package nel tag useBean....
grazie mille...  Avrei potuto impiegare ore o giorni prima di capire
dove stava lo sbaglio..