Galera, tenho uma aplicação que tem alguns arquivos .txt de configuração.
Quando tento ler um arquivo utilizando este trecho de código tradicional para manipular arquivos
try {
BufferedReader in = new BufferedReader(new FileReader("LendoDoArquivo.txt"));
String str;
while ((str = in.readLine()) != null) {
strRet+= str;
}
in.close();
} catch (IOException e) {
}
ele me da o seguinte erro:
java.security.AccessControlException: access denied (java.io.FilePermission LendoDoArquivo.txt read)
E quando tento utilizando o jar do jnlp
FileOpenService fos;
try {
System.out.println(ServiceManager.getServiceNames());
fos = (FileOpenService)ServiceManager.lookup("javax.jnlp.FileOpenService");
// fos = (FileOpenService)ServiceManager.lookup("");
} catch (UnavailableServiceException e) {
logger.error(e);
fos = null;
}
ele dar este erro:
ERROR - javax.jnlp.UnavailableServiceException: uninitialized
Só para constar o arquivo LendoDoArquivo.txt está dentro do jar principal da aplicação. Com a primeira maneira de leitura, localmente eu consigo ler, mas quando exporto a aplicação para utilizar com Java Web Start ele da aquele erro. E com a segunda opção nem localmente ele roda, o ServiceManager não traz nem os ServiceName, e por isso não consegue exergar javax.jnlp.FileOpenService.
Ja procurei bastante na web, mas o material sobre JWS é precário.
Alguem pode me ajudar?
