Index: lutinutil/src/java/org/codelutin/util/Resource.java diff -u lutinutil/src/java/org/codelutin/util/Resource.java:1.35 lutinutil/src/java/org/codelutin/util/Resource.java:1.36 --- lutinutil/src/java/org/codelutin/util/Resource.java:1.35 Thu Mar 20 01:29:42 2008 +++ lutinutil/src/java/org/codelutin/util/Resource.java Sun Mar 23 06:01:04 2008 @@ -23,9 +23,9 @@ * * @author POUSSIN Benjamin * Copyright Code Lutin -* @version $Revision: 1.35 $ +* @version $Revision: 1.36 $ * -* Mise a jour: $Date: 2008-03-20 01:29:42 $ +* Mise a jour: $Date: 2008-03-23 06:01:04 $ * par : $Author: tchemit $ */ @@ -165,7 +165,7 @@ result = getConfigProperties(filename, null); return result; } - + static public Properties getConfigProperties(String filename, Properties parent) throws IOException { Properties result; if (parent != null) { @@ -183,7 +183,7 @@ result.load(inClasspath.openStream()); result = new Properties(result); } - + File etcConfig = new File("/etc/" + filename); if(etcConfig.exists()){ log.info("Chargement du fichier de config: " + etcConfig); @@ -219,7 +219,7 @@ try { // Essai de récupération de la méthode getAllURLs() de RepositoryClassLoader (JBoss) m = classLoader.getClass().getMethod("getAllURLs"); - } catch (Exception e) { + } catch (Exception e) { m = null; } URL[] result; @@ -234,7 +234,7 @@ } return result; } - + /** * Retourner la liste des fichiers du classLoader. Ces fichiers doivent * correspondent au pattern donne @@ -323,7 +323,11 @@ result = new URL[paths.length + 1]; result[0] = jarURL; for (int i = 0; i < paths.length; i++) { - File path = new File(container, paths[i]); + String s = paths[i]; + File path =new File(s); + if (!path.isAbsolute()) { + path = new File(container, s); + } if (log.isDebugEnabled()) { log.debug(path); } @@ -343,7 +347,7 @@ if(log.isTraceEnabled()) { log.trace("search '" + pattern + "' in " + jarfile); } - + ArrayList result = new ArrayList(); InputStream in = new FileInputStream(jarfile); ZipInputStream zis = new ZipInputStream(in);