J'ai un projet Web Eclipse. J'ai un fichier appelé deploy.properties dans le répertoire racine qui ne semble pas être lu. J'ai le sentiment que je pourrais avoir besoin d'ajouter le fichier au "build path" (comme un pot), mais ce n'est qu'une supposition, quand j'essaye de faire cela, il n'y a pas d'option pour ajouter des fichiers au chemin de compilation afin que me fait penser que je me trompe à ce sujet.Eclipse ne lit pas un fichier de configuration
Ligne 89 est celui props.load(stream);
Ma trace de la pile ressemble à ceci:
java.lang.NullPointerException
at java.util.Properties$LineReader.readLine(Properties.java:365)
at java.util.Properties.load(Properties.java:293)
at sempedia.dao.Dao.getConfigFile(Dao.java:89)
at sempedia.dao.Dao.<clinit>(Dao.java:17) 89
Et la classe ressemble à ceci:
public class Dao {
private static final String configFileLocation = "/deploy.properties";
private static final Properties configFile = getConfigFile(configFileLocation);
private static final String host = configFile.getProperty("mysql.host");
private static final String port = configFile.getProperty("mysql.port");
private static final String db = configFile.getProperty("mysql.db");
private static final String user = configFile.getProperty("mysql.user");
private static final String pwd = configFile.getProperty("mysql.pwd");
public static String getHost() { return host; }
public static String getPort() { return port; }
public static String getDb() { return db; }
public static String getUser() { return user; }
public static String getPwd() { return pwd; }
public static Connection getCon() {
Connection con = null;
try {
String url = "jdbc:mysql://" + host + ":" + port + "/" + db;
Class.forName("com.mysql.jdbc.Driver").newInstance();
con = DriverManager.getConnection(url, user, pwd);
} catch (SQLException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return con;
}
private static Properties getConfigFile(String fileName) {
Properties props = new Properties();
try {
InputStream stream = Dao.class.getResourceAsStream(fileName);
props.load(stream);
} catch (IOException e) {
System.err.println("Error opening configuration file");
System.exit(1);
}
return props;
}
}
C'est effrayant. On dirait que vous faites quelque chose de très similaire à ce que je fais actuellement au travail. :) – Neil
@Neil ... c'est un petit monde :) – Ankur