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

problema con imagen

Estas en el tema de problema con imagen en el foro de Java en Foros del Web. hola a todos.... estoy creando una web que permitirá administrar fotos de perfil. en este momento estoy yendo a buscar la foto (la cual la ...
  #1 (permalink)  
Antiguo 07/08/2008, 02:32
Avatar de fbirrer  
Fecha de Ingreso: enero-2006
Ubicación: Santiago de Chile
Mensajes: 329
Antigüedad: 18 años, 3 meses
Puntos: 0
problema con imagen

hola a todos....

estoy creando una web que permitirá administrar fotos de perfil.
en este momento estoy yendo a buscar la foto (la cual la estoy guardando con el nombre de la persona punto jpg)

pero cuando esta foto no existe quiero que me vaya a traer una foto definida con un signo de interrogacion....

la duda es como puedo hacer para que, en el archivo jsp, el programa pregunte si no existe ese archivo y me carge otro archivo predefinido,

gracias
__________________
Desde Santiago de Chile
Grupo Universite
Información sobre los Institutos Chilenos de Educación
www.universite.cl
  #2 (permalink)  
Antiguo 07/08/2008, 05:32
Isdiar
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: problema con imagen

Cómo cargarías la foto?
  #3 (permalink)  
Antiguo 07/08/2008, 09:13
Avatar de Xinef  
Fecha de Ingreso: marzo-2007
Mensajes: 202
Antigüedad: 17 años, 1 mes
Puntos: 7
Respuesta: problema con imagen

Cita:
Iniciado por fbirrer Ver Mensaje
estoy creando una web que permitirá administrar fotos de perfil.
en este momento estoy yendo a buscar la foto (la cual la estoy guardando con el nombre de la persona punto jpg)
Mala práctica.

El nombre del archivo debería ser un id único... el id único de la persona en la BD.


Cita:
la duda es como puedo hacer para que, en el archivo jsp, el programa pregunte si no existe ese archivo y me carge otro archivo predefinido,
Código PHP:
   File foto = new File([ruta de la imagen]);
   if (
foto.exists()) {
        
muestro_foto;
   } else {
        
muestro_foto_interrogacion;
   } 
Para que quede "guay" eso debería ser un servlet que envíe la ristra de bytes de la imagen a una etiqueta <img>.
  #4 (permalink)  
Antiguo 08/08/2008, 05:50
 
Fecha de Ingreso: marzo-2008
Mensajes: 19
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: problema con imagen

Hola Xinef, me interesa la parte de enviar desde el servlet una ristra de bytes de la imagen a una etiqueta <img>

¿Podría comentarme algo? Estaría muy agradecida, hace tiempo que estoy buscando una solución.

Muchas gracias

Un saludo
  #5 (permalink)  
Antiguo 08/08/2008, 06:08
Avatar de Xinef  
Fecha de Ingreso: marzo-2007
Mensajes: 202
Antigüedad: 17 años, 1 mes
Puntos: 7
Respuesta: problema con imagen

Cita:
Iniciado por Mercedes26 Ver Mensaje
Hola Xinef, me interesa la parte de enviar desde el servlet una ristra de bytes de la imagen a una etiqueta <img>

¿Podría comentarme algo? Estaría muy agradecida, hace tiempo que estoy buscando una solución.

Puedes dividir el problema en dos partes:

La parte HTML donde una etiqueta <img> va a "esperar" una URL a una imagen en su atributo src.

<img src="[URL]"/>

Esa URL puede (en este caso debe :P) ser la llamada a un servlet. El cometido del servlet tiene que ser devolver una imagen, para ello el proceso es siempre igual.
  • Comprobar que el archivo existe.
  • Capturar el outStream del response.
  • Declarar el tipo de contenido content-type. En este caso, una imagen jgp, por ejemplo: image/jpeg:
  • Ir leyendo del archivo de la imagen y enviando lo leído al ouputStream del response.
  • Cerrar los archivos abiertos.


Ya sólo queda codificar eso (no es difícil). Si tienes alguna duda en concreto puedes comentarlo.
  #6 (permalink)  
Antiguo 12/08/2008, 01:35
 
Fecha de Ingreso: marzo-2008
Mensajes: 19
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: problema con imagen

Muchas gracias de nuevo.

Creo que eso es exactamente lo que hago, pero en mi jsp me sale un aspa, no se muestra la imagen.

En la jsp tengo:
img src="pestanaHoy.do?accion=estadisticas" />

Y en el action:

DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.setValue(5, "compras", "Enero");
dataset.setValue(7, "compras", "Febrero");

JFreeChart chart = ChartFactory.createBarChart("Compras", "Compras 2007", "Nª compras", dataset, PlotOrientation.VERTICAL, false, true, false);

try{
CharUtilities.saveChartAsJPEG(new File("../webapps/chart.jpeg"), chart, 500, 300);
FileInputStream miFicheroSt = new FileInputStream("../webapps/chart.jpeg");
int longitud = miFicheroSt.available();
byte[] buffer = new byte[longitud];
miFicheroSt.read(buffer, 0, longitud);
OutputStream outServlet = response.getOutputStream();
response.setContentType("image/jpeg");
outServlet.write(buffer);
outServlet.close();
}catch(IOException e){
e.printStackTrace();
}


NOTAS:
- La url del src de la imagen llama correctamente al action, pues lo he comprobado
- El archivo con la gráfica también se crea correctamente
- He probado en lugar de crear el archivo y leerlo, a poner el siguiente código, pero el resultado es el mismo, el aspa.
CharUtilities.writeAsJPEG(outServlet, 500, 300);


No sé que puede ser, si te resulta útil algún código adicional dímelo y lo posteo.

Muchas gracias de nuevo.

un saludo!!
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 12:55.