Ejemplo n.º 1
0
  /**
   * Obtiene una ruta de un fichero de localización.
   *
   * @param key Nombre de la localización.
   * @return Ruta del fichero de configuración.
   */
  public static String getLocation(String key) {
    String location = null;

    try {
      location = ISPACConfigLocation.getInstance().get(key);
    } catch (ISPACException e) {
      location = null;
    }

    return location;
  }
Ejemplo n.º 2
0
  /**
   * Obtiene la URL de un fichero. La búsqueda de realiza en el orden siguiente:
   *
   * <ul>
   *   <li>Classpath de la aplicación
   *   <li>Classpath del sistema
   *   <li>Ruta absoluta
   * </ul>
   *
   * @param resource Nombre del fichero.
   * @return URL del fichero.
   */
  public static URL getFileURL(String resource) {

    URL url = null;

    if (resource != null) {

      // Comprobar el fichero en el classpath de la aplicación
      url = ISPACConfigLocation.class.getClassLoader().getResource(resource);
      if (url == null) {

        // Comprobar el fichero en el classpath del sistema
        url = ClassLoader.getSystemResource(resource);
        if (url == null) {

          try {

            // Fichero con path relativo a la aplicación
            String appPath = ISPACConfigLocation.getInstance().get(APP_PATH);
            if (StringUtils.isNotBlank(appPath)) {
              File file = new File(appPath + resource);
              if (file.isFile()) {
                url = file.toURL();
              }
            }
          } catch (Exception e) {
            url = null;
          }

          if (url == null) {
            try {

              // Fichero con path absoluto
              File file = new File(resource);
              if (file.isFile()) {
                url = file.toURL();
              }

            } catch (Exception e) {
              url = null;
            }
          }
        }
      }
    }

    return url;
  }