Retroceder   Foros del Web > Programación para sitios web > Java y JSP > JSP/Servlets

Respuesta
 
Herramientas Desplegado
Antiguo 14-abr-2008, 09:44   #1 (permalink)
ferminciilo ha deshabilitado el karma
 
Fecha de Ingreso: agosto-2005
Mensajes: 43
servlet de upload de imagen

Hola.

Tengo un servlet para el upload de una imagen para un aplicación web sobre tomcat 5.5. La aplicación sube bien el fichero, pero no donde yo deseo.Me explico.

Yo quiero que me suba el fichero a /WEB-INF/comunes/gfx; pero al directorio de trabajo donde tengo el código (D:\eclipsej2ee\Struts1\WebContent\WEB-INF\comunes\gfx), pero siempre me lo sube a D:\eclipseJ2EE\.metadata\.plugins\org.eclipse.wst. server.core\tmp1\Struts1\WEB-INF\comunes\gfx

No sé que hacer.

Parte del código que tengo es este:

try {
InputStream stream = myFile.getInputStream();
String directorio = request.getServletPath();
ServletConfig scfg = servlet.getServletConfig();
ServletContext sctx = scfg.getServletContext();
String dir2 = sctx.getRealPath("/WEB-INF/comunes/gfx");
OutputStream bos = new FileOutputStream(dir2 +"/"+ fileName);
int temp = 0;
byte[] buffer = new byte[8192];
while ((temp = stream.read(buffer, 0, 8192)) != -1) {
bos.write(buffer, 0, temp);
}
bos.close();
data = "el archivo se ha subido";
stream.close();
} catch (FileNotFoundException fnfe) {
System.out.println("Fallo al subir archivo!!!");
fnfe.printStackTrace();
}



No sé que tengo que hacer, por cierto trabajo en Eclipse. Si como directorio pongo C:\ va de perlas.

Toda ayuda será bienvenida

Gracias.
ferminciilo está desconectado   Responder Citando
Antiguo 22-abr-2008, 02:37   #2 (permalink)
vgonga1986 ha deshabilitado el karma
 
Fecha de Ingreso: marzo-2008
Mensajes: 11
Re: servlet de upload de imagen

No sé si lo habrás solucionado ya, pero yo probaría con lo siguiente:

String root = getServletContext().getRealPath("/");
String filePath = root + "WEB-INF\\comunes\\gfx\\";
OutputStream bos = new FileOutputStream(root + fileName);

Creo que el error que tienes es que mezclas direcciones de la aplicación con direcciones físicas reales y por eso no te lo crea dónde quieres. En la aplicación no existe la ruta "/WEB-INF/comunes/gfx", ya que la carpeta WEB-INF es totalmente invisible si accedemos desde localhost. Así que para tema de archivos tienes que tratar con ruta física.

Espero que te sirva y que no llegue tarde, hasta pronto.
vgonga1986 está desconectado   Responder Citando
Respuesta

Calificación: Calificación de Tema: 1 votos, 4,00 de promedio.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 01:31.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93