importar una clase java desde una jsp

asdfawer
17 de Agosto del 2004
Wenas

Estoy intentando llamar una clase java creada por mi desde un jsp. La clase es así:

package paqPrueba;
import java.util.*;
import java.io.Serializable;

public class Prueba implements Serializable
{
private String Nombre="Pepito";
public String getNombre() throws Exception
{
return Nombre;
}
}

La he compilado y he metido lo que me ha salido (Prueba.class) dentro de C:Tomcat 4.1webappsROOTpruebaWEB-INFclassespaqPrueba

La pagina jsp desde la que llamo a la clase es la siguiente:

<html>
<head>
</head>
<%@page import="paqPrueba.Prueba"%>
<body>
hola <%= Prueba.getNombre() %>
</body>
</html>

La guardo en C:Tomcat 4.1webappsROOTprueba

Reinicio el Tomcat, y voy a http://localhost:8080/prueba/index.jsp

y entonces me da el siguiente error:

org.apache.jasper.JasperException: No se puede compilar la clase para JSP

An error occurred at line: 6 in the jsp file: /prueba/index.jsp

Generated servlet error:
[javac] Compiling 1 source file

C:Tomcat 4.1workStandalonelocalhost_pruebaindex_jsp.java:7: package paqPrueba does not exist
import paqPrueba.Prueba;
^
C:Tomcat 4.1workStandalonelocalhost_pruebaindex_jsp.java:47: cannot resolve symbol
symbol : variable Prueba
location: class org.apache.jsp.index_jsp
out.print( Prueba.getNombre() );

¿¿¿POR QUE????¿¿ALGUIEN ME PUEDE AYUDAR??SOLO QUIERO LLAMAR UNA CLASE JAVA CREADA POR MI DESDE UNA PAG JSP ¿¿ COMO LO PUEDO HACER??

Alex
17 de Agosto del 2004
Lo más sencillo en estos casos, es empaquetar las clases que necesitas auxiliares en un paquete, hacer un JAR con ellas, y ponerlo como librería al crear el JSP, así no tienes mayor problema.

Si no sabes hacer un JAR o un WAR, ´no es complejo, pero yo te recomiendo que uses ANT (de los de apache) que haces una especie de "makefile" y te genera todo (de hecho, puedes desde compilar y desplegar, hasta reiniciar el servidor)

Si tienes dudas, mándame un mail