Чтение внешнего файла из Jar - PullRequest
1 голос
/ 19 июля 2011

Я использую приведенный ниже код для чтения файла (.cer file) из класса Java.Класс java будет связан внутри Jar, а затем включен в EAR.

FileInputStream inStream = new FileInputStream ("/home/test/foo.cer"); 

Я также пытался

FileInputStream inStream = new FileInputStream ("home/test/foo.cer"); 

Но оба они генерируют исключение FileNotFoundException.EAR развернут в Weblogic в системе Unix.Я проверил путь и имя файла.

Есть идеи, если я что-то упустил?

Ответы [ 2 ]

1 голос
/ 19 июля 2011

Я предлагаю включить расположение файла .cer в путь к классу сервера приложений, а затем загрузить его с помощью getResourceAsStream (String location) класса ClassLoader .

Если вы добавили каталог /home/test для classpath, соответствующий код должен быть:

this.getClass().getClassLoader().getResourceAsStream("foo.cer");

Я обнаружил, что это гораздо более надежный метод загрузки внешних ресурсов при запуске в appserver, плюс это значительно упрощает тестирование.

0 голосов
/ 19 июля 2011
try {
    BufferedReader reader = new BufferedReader(new FileReader(FILE_NAME_REL_OR_ABSOLUTE));
    reader.readLine();
} catch (IOException e) { 

} catch (FileNotFoundException ex) {

}
...