Foros del Web » Programación para mayores de 30 ;) » Java »

Uso de imagenes con servlets

Estas en el tema de Uso de imagenes con servlets en el foro de Java en Foros del Web. Gente como les va; estoy molestando porque estoy haciendo una pagina con servlets. Quiero saber como se hace para poder utilizar rutas relativas a los ...
  #1 (permalink)  
Antiguo 13/04/2009, 16:54
 
Fecha de Ingreso: octubre-2006
Mensajes: 5
Antigüedad: 17 años, 6 meses
Puntos: 0
Uso de imagenes con servlets

Gente como les va; estoy molestando porque estoy haciendo una pagina con servlets.

Quiero saber como se hace para poder utilizar rutas relativas a los recursos de imagenes; es decir si en un HTML yo hago lo siguiente:

<img src=imagenes/pepe.jpg>

automaticamente el proyecto sabe cual es la ruta de contexto y me trae la imagen;

pero si en el mismo proyecto yo tengo un servlet y tipeo


...

salida.println("<img src=imagenes/pepe.jpg>")

...

no me trae nada, me muestra el icono como si la imagen no estuviera disponible.

Les adjunto la imagen de la estructura de mi proyecto

[IMG]C:\Documents and Settings\Julia Yebra\Escritorio\Proyect Explorer.JPG[/IMG]

Verdaderamente si alguien puede darme una mano porque me estoy quemando de tanto leer en foros
  #2 (permalink)  
Antiguo 14/04/2009, 02:42
Avatar de elAntonie  
Fecha de Ingreso: febrero-2007
Mensajes: 894
Antigüedad: 17 años, 3 meses
Puntos: 10
Respuesta: Uso de imagenes con servlets

Wenas

No es exactamente lo que quieres pero te puede servir de ayuda. A mi me sirvio para lo que queria hacer. Necesitaba obtener una imagen de base de datos y sacarla en un html.

http://www.adictosaltrabajo.com/tuto...=servletimagen

La idea es un servlet que 'sea una imagen', para ello tienes que cambiarle el content-type a tipo imagen, y desde tu jsp o algun html llamar a tu servlet.

Código:
<img src="<%=request.getContextPath()%>/LogoServlet" name="logo" width="100" height="100" style="display:none;">
Si la imagen la tienes ya creada, como es tu caso, podrias obtenerla a partir del contexto.
El servlet
Código:
byte [] resultado=null;  
              ServletContext sc = getServletContext();
                
              String filename = sc.getRealPath(File.separator + "imagenes" + File.separator + "nada.jpg");
               File f=new File(filename);
               size=(int) f.length();
               resultado=new byte[size];
               stream = new BufferedInputStream(new FileInputStream(f));
               stream.read(resultado);

            response.setContentType("image/jpeg");
            OutputStream sos = response.getOutputStream();
	          sos.write(resultado);
            sos.flush();
            sos.close();
Todo ello con sus try-catch correspondientes.

Esta es la parte en la que mando una imagen en blanco si la imagen que busco en BBDD no existiera.

Creo que mas o menos es lo que quieres.

Saludos
  #3 (permalink)  
Antiguo 14/04/2009, 03:39
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Respuesta: Uso de imagenes con servlets

La cuestion es que los paths relativos en HTML son relativos a la URL que tiene el navegador. Así que no importa la estructura interna de tu proyecto, si usas servlets, JSPs, FreeMarker, XSLTs... lo que sea.

Lo importante es la URL del navegador por la que ves ese HTML y las direcciones relativas que tengas en el HTML seran relativas a esa URL. Y no hay más. No importa como generes ese HTML, lo importante es la URL que has usado para obtenerlo.

S!
__________________
Para obtener respuestas, pregunta de forma inteligente o si no, pregunta lo que quieras que yo contestaré lo que me dé la gana.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:24.