JSP (Java Server Page) - clases internas en los servlets

 
Vista:

clases internas en los servlets

Publicado por Pablo (2 intervenciones) el 19/04/2002 16:35:48
Hola a tod@s.
Mi problema es el siguiente. Estoy haciendo un web, y en el lugar que lo alojará no me permiten utilizar beans ni servlets. Sólo jsp.
Imaginad que necesitais autenticar a un usuario. Lo normal es guardar sus datos en una CLASE, y esta CLASE meterla en el objeto session. Pero ¿dónde declaro esta CLASE? Actualmente coloco cada clase en un jsp individual y después incluyo los necesarios en las páginas con un include. Cada página jsp se convierte en un servlet, y las clases que yo declaro e incluyo, pasan a ser clases internas de cada servlet. En todos los servlets están declaradas las mismas clases internas, exactamente iguales, pero diferentes por ser diferente la clase que las contiene. Y así, al hacer por ejemplo
Usuario usuario = ( Usuario ) session.getAttribute( \"usuario\" );
da un ClassCastException. Lógico.

Me he comido la bola por todos los sitios que se me ha ocurrido. ¿Alguna idea? Gracias anticipadas
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:clases internas en los servlets

Publicado por Antonio (10 intervenciones) el 19/04/2002 19:26:14
´La solución a eso es que pongas las clases necesarias para los jsp en un fichero jar, y desde los jsp hagas import de las clases que hay en el jar.
Para que funcione en el servidor deberás poner en el classpath el camino para llegar a ese jar.
Por útlimo:
no debes hacer
Usuario usuario = ( Usuario ) session.getAttribute( \"usuario\" );
sino
Usuario usuario = ( Usuario ) session.getAttribute( "usuario" );
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:clases internas en los servlets

Publicado por Pablo (2 intervenciones) el 20/04/2002 10:41:48
Gracias, pero el problema es que tampoco puedo instalar ninguna clase en el servidor.
El problema es que tengo que hacer una aplicación y el servidor en dónde se ejecutará sólo me permite utilizar jsp. Nada de servlets, nada de beans, y lo que yo no sabía, nada de instalar clases. Creo que lo hacen por seguridad.
Me imagino que alguien habrá hecho ya algo así, pero no sé cómo puedo acceder a las clases que necesite en mi aplicación. No sé dónde declararlas, ni cómo instanciarlas ni nada parecido.
Por cierto, lo de la barra inclinada delante de las comillas no lo he puesto yo. (creo). Debe ser algo que sale solo, cuando se ponen comillas. Gracias por las respuestas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar