Leer un xml en una aplicacion Web

Miguel
24 de Marzo del 2006
Que tal,
Sucede que estoy haciendo un aplicación en WebSphere en la que debo leer un archivo de configuración XML Ya hice mis clases que lo leen, pero esto en una aplicación Stand Alone utilizando para ello la instruccion:

doc = db.parse(new File(nombreArchivo));

en donde doc es un Document, db es un DocumentBuilder y nombreArchivo es el nombre del XML, pero el XML estaba en la misma ruta de la clase y asi funciona muy bien, pero esto montado en una aplicacion Enterprise que va a ser utilizado por un EJB y paso el XML a otra ruta, no me funciona, ya que cuando ejecuto la JSP que ejecuta el Action (Struts) que tiene la llamada a mi clase que lee el XML siempre me dice que no encuentra el archivo. Ya intente poner el XML en una ruta bajo el WebContent y mandarlo llamar con la URI, pero sigue sin poder encontrarlo. Alguien me decia que no debo usar un File porque eso busca el archivo en una ruta fisica y no relativa, pero no sabia como debería hacerlo.
Espero alguien me pueda decir como hacer esto. Gracias

neossoftware
24 de Marzo del 2006
Si mira para poder abrir un archivo A la clase File le tienes que pasar la ruta fisica esto lo puedes obtener con lo siguiente


ServletContext ctx=req.getSession().getServletContext();
String path= ctx.getRealPath("/reports/dailyfile/files/");
String fileName="miarchivo.xml"
String file=path + fileName;

Para las lineas anteriores miarchivo.xml esta en la siguiente RUTA:

/home/tomcat/misapps/miApplication/WebContent//reports/dailyfile/files/miarchivo.xml

Y asi de facil puedes acceder a tu XML

Saludos!!!!