Witam.
Mam problem z odczytaniem a konkretniej znalezieniem plików properties w aplecie.
Generalnie, gdy uruchamiam applet pod eclips’em pliki properties znajdywane są bez problemów jednak, gdy uruchamiam applet na stronie dostaję wyjątek informujący o niemożliwości odnalezienia pliku properties dokładniej:
EXCEPTION: message\gui_pl.properties (System nie może odnaleźć określonej ścieżki)
java.io.FileNotFoundException: message\gui_pl.properties (System nie może odnaleźć określonej ścieżki)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
at java.io.FileInputStream.<init>(Unknown Source)
at src.multi.util.MessageUtil.getMessage(MessageUtil.java:35)
at src.multi.panel.MainMenuPanel.setLabels(MainMenuPanel.java:116)
at src.multi.panel.MainMenuPanel.prepareObjects(MainMenuPanel.java:106)
at src.multi.panel.MainMenuPanel.init(MainMenuPanel.java:64)
at src.multi.panel.MainMenuPanel.<init>(MainMenuPanel.java:60)
at src.multi.panel.MainMenuPanel.getInstance(MainMenuPanel.java:53)
at src.multi.gui.StartApp.prepareObjects(StartApp.java:43)
at src.multi.gui.StartApp.init(StartApp.java:27)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Struktura pliku jar appletu wygląda tak
- messager
- gui_pl.properties
- gui_en.properties
- gui.properties
- META-INF
- src.multi …(inne pakiety)
- src.multi.util
- MessageUtil.class
Klasę “MessageUtil” wykorzystuję do odczytania zawartości plików properties
package src.multi.util;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Locale;
import java.util.Properties;
public class MessageUtil {
static Properties properties = new Properties();
public static String GUI = "message/gui_";
private static String EXT = ".properties";
public static String getMessage(String propertiesName, String key) {
String message = "";
try {
properties.load(new FileInputStream(propertiesName
+ Locale.getDefault().getLanguage() + EXT));
message = properties.getProperty(key);
} catch (FileNotFoundException e) {
log.exception(e);
e.printStackTrace();
} catch (IOException e) {
log.exception(e);
}
return message;
}
}
Na razię pod zmienną "propertiesName" podstawiam to, co jest pod zmienną statyczną "GUI".
Jednak jak już wspomniałem nie działa mi to na stronie.