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

Struts 1.2.9 (NB6.1) - Obtener ruta del proyecto web ... como?

Estas en el tema de Struts 1.2.9 (NB6.1) - Obtener ruta del proyecto web ... como? en el foro de Java en Foros del Web. holas gente Tengo un problema Lo q pasa es q no se como obtener la ruta en la cual se ubica el sistema web mediante ...
  #1 (permalink)  
Antiguo 04/11/2009, 09:04
 
Fecha de Ingreso: enero-2007
Mensajes: 63
Antigüedad: 17 años, 3 meses
Puntos: 2
Pregunta Struts 1.2.9 (NB6.1) - Obtener ruta del proyecto web ... como?

holas gente

Tengo un problema Lo q pasa es q no se como obtener la ruta en la cual se ubica el sistema web mediante codigo

Con este codigo lo unico q e podido encontrar es la ruta

c:\sistemas\jsp\MiSistema\build\web\

Código:
getServlet().getServletContext().getRealPath("");
y lo q quisiera es la ruta c:\sistemas\jsp\MiSistema\ y obvio q cuando el sistema se corra desde otra pc seguiria obteniendo la ruta del sistema

x:\otra_ruta\MiSistema\

Como puedo obtenerla??

gracias por todo de antemano...
  #2 (permalink)  
Antiguo 04/11/2009, 09:16
Avatar de elAntonie  
Fecha de Ingreso: febrero-2007
Mensajes: 894
Antigüedad: 17 años, 3 meses
Puntos: 10
Respuesta: Struts 1.2.9 (NB6.1) - Obtener ruta del proyecto web ... como?

Wenas

request.getContextPath();

Saludos.
  #3 (permalink)  
Antiguo 05/11/2009, 13:36
 
Fecha de Ingreso: enero-2007
Mensajes: 63
Antigüedad: 17 años, 3 meses
Puntos: 2
Respuesta: Struts 1.2.9 (NB6.1) - Obtener ruta del proyecto web ... como?

Cita:
Iniciado por elAntonie Ver Mensaje
Wenas

request.getContextPath();

Saludos.
Con request.getContextPath(); solo obtengo "\MiSistema" pero lo q quiero obtener es

"x:\...\ruta_proyectos\MiSistema" osea toda la ruta donde actualmente se almacena el sistema ya q dentro del sistema (en una carpeta llamada imagenes) quiero almacenar un archivo con un fileupload

pero como les digo utilizando

Código:
getServlet().getServletContext().getRealPath("");
obtengo "x:\...\ruta_proyectos\MiSistema\build\web"

o es lo mismo guardar la imagen en "x:\...\ruta_proyectos\MiSistema\imagenes" q en "x:\...\ruta_proyectos\MiSistema\build\web\imagene s" ???

O tal vez otra solucion para subir un archivo (mediante un fileupload) a una carpeta q yo desee q se encuentre dentro de mi proyecto?

gracias por todo
  #4 (permalink)  
Antiguo 06/11/2009, 02:55
Avatar de elAntonie  
Fecha de Ingreso: febrero-2007
Mensajes: 894
Antigüedad: 17 años, 3 meses
Puntos: 10
Respuesta: Struts 1.2.9 (NB6.1) - Obtener ruta del proyecto web ... como?

Ahhhhhhh bueno, si solo quieres subir un fichero a tu servidor, con oreilly haces el upload a tu servidor y lo colocas donde te da la gana.

Saludos.
  #5 (permalink)  
Antiguo 06/11/2009, 15:15
 
Fecha de Ingreso: enero-2007
Mensajes: 63
Antigüedad: 17 años, 3 meses
Puntos: 2
Respuesta: Struts 1.2.9 (NB6.1) - Obtener ruta del proyecto web ... como?

Ya pude lograr lo q deseaba (subir un archivo con un fileupload a una carpeta q yo desee del proyecto)

Hice lo siguiente .. en el Action

Trabajo con DynaValidatorActionForm (para no tener q estar programando 1 a 1 tooodos los FormAction q necesite)

Código:
...
DynaValidatorActionForm frm = (DynaValidatorActionForm) form;
...
FormFile myFile = (FormFile) frm.get("txtFoto");

Integer pos = 0;
UUID uuid = UUID.randomUUID(); // para generar nombres aleatorios a los archivos q se suban :)

String e[] = myFile.getContentType().split("/");
String ext = "." + e[1];
String foto = uuid.toString() + ext;
String path = request.getRealPath(""); //ruta actual del proyecto
        
pos = path.indexOf("\\build\\web");
path = path.substring(0, pos);//deseo colocar la foto en una ruta especifica
OutputStream os = new FileOutputStream(path + "/web/imagenes/zapatos/" + foto);//ubicacion especifica del archivo
os.write(myFile.getFileData());//escribo el archivo
os.close();

si hubiera alguna correccion (o mejoramiento) ... por favor haganmelo saber

espero le sirva esto a alguien ... ojo q esto es solo para subir un archivo a la vez

Salu2
  #6 (permalink)  
Antiguo 11/11/2009, 09:10
 
Fecha de Ingreso: enero-2007
Mensajes: 63
Antigüedad: 17 años, 3 meses
Puntos: 2
Respuesta: Struts 1.2.9 (NB6.1) - Obtener ruta del proyecto web ... como?

despues de unas pruebas me di cuenta q al subir una imagen y despues al querer verla (en un jsp) no la mostraba (salia el tipico cuadro con una X roja en la esquina superior izquierda)

para poder mostrar la nueva imagen subida tenia q cerrar el browser y ejecutar nuevamente el proyecto (F6)

esto se debe a q para guardar la imagen yo establecia una ruta diferente a la obtenida con request.getRealPath("")

entonces para solucionar este problema ademas de guardar la imagen donde yo deseo tb debo guardarla en la ruta obtenida por request.getRealPath("")

y procedemos acerlo agregando un codigo parecido q utilizamos para subir la imagen anterior

Código:
 path = request.getRealPath("");        
        OutputStream os2 = new FileOutputStream(path + "/imagenes/zapatos/" + foto);
        os2.write(myFile.getFileData());
        os2.close();
con esto (y el msj anterior a este) las rutas finales de almacenamiento serian

x:\ruta_de_proyectos\miSistema\build\web\imagenes\ zapatos\foto.jpg
x:\ruta_de_proyectos\miSistema\web\imagenes\zapato s\foto.jpg

si se dan cuenta la unica diferencia es la carpeta "build", siendo esta carpeta la q contiene todo nuestro proyecto generado cada vez que lo volvemos a ejecutar ... debido a q la imagen no se guardaba ahi no la mostraba en un primer momento :)

ahora si mostrara las imagenes sin necesidad de ejecutar nuevamente el proyecto cada vez q subimos una nueva imagen :)


...ojo q este proyecto esta siendo probado de forma local y ademas esta corriendo sobre NetBeans 6.1


salu2
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 19:48.