Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/11/2010, 11:05
Avatar de webness
webness
 
Fecha de Ingreso: enero-2009
Ubicación: BOGOTA
Mensajes: 312
Antigüedad: 15 años, 11 meses
Puntos: 5
Desacuerdo Lectura de ficheros desde una app web

Hola a todos, poseo grandes problemas.

tengo una aplicacion web basica, desde un jsp llamo una clase para conectarme a la base de datos que esta es un paquete com.crc.model --> esta clase debe leer un fichero db_config.ini que esta en el mismo directorio, y lo hace apoyandoce en una clase que esta en el paquete com.crc.tools ---> en esta clase tengo el siguiente condigo que me funciona a la perfeccion cuando la ruta del archivo es absoluta:

Código Java:
Ver original
  1. import java.io.BufferedReader;
  2. import java.io.FileReader;
  3. import java.io.IOException;
  4. import java.net.URISyntaxException;
  5. import java.util.HashMap;
  6. import java.util.StringTokenizer;
  7.  
  8. public class IniFile
  9. {
  10.     private HashMap values; //para guardar lo que leamos del ini
  11.    
  12.     public IniFile(String path) throws IOException, URISyntaxException
  13.     {
  14.         FileReader fileReader           =   new FileReader(path);
  15.         BufferedReader bufferedReader   =   new BufferedReader(fileReader);
  16.  
  17.         String line =   "";
  18.         this.values =   new HashMap();
  19.        
  20.         while((line =   bufferedReader.readLine())!=null)
  21.         {
  22.             StringTokenizer stringTokenizer =   new StringTokenizer(line,"=");
  23.             String key  =   stringTokenizer.nextToken();
  24.             String value=   stringTokenizer.nextToken();
  25.  
  26.             this.values.put(key,value);
  27.         }
  28.         bufferedReader.close();
  29.     }
  30.  
  31.     public String getValor(String key)
  32.     {
  33.         if(this.values!=null)
  34.         {
  35.             return (String) this.values.get(key);
  36.         }
  37.         else
  38.         {
  39.             return null;
  40.         }
  41.     }
  42. }

y desde la clase de base de datos la llamo asi:

Código java:
Ver original
  1. IniFile iniFile =   new IniFile("D:\\PROYECTOS_JAVA\\demo_jboss\\src\\java\\com\\crc\\model\\db_config.ini");
  2.         //this.URLString     =   DBMS.class.getResource("db_config.ini");
  3.         this.strURL =  iniFile.getValor("url");

necesito saber como hacer referencia a mi fichero db_config.ini desde la clase IniFile sin la ruta absoluta, pues cuando la app este en produccion obviamente la ruta abosulta no sera la misma.