Eu estou testando o código abaixo na IDE eclipse, e estou tendo o retorno acesso negado, alguém poderia me dizer se tenho que configurar algo para dar certo? ou qual o problema?
public class Teste {
public static void main(String[] args) {
String caminhoJar = System.getProperty("java.class.path");
try {
ZipFile zipFile = new ZipFile(caminhoJar);
Enumeration<? extends ZipEntry> entries = zipFile.entries();
while (entries.hasMoreElements()) {
ZipEntry zipEntry = (ZipEntry) entries.nextElement();
String name = zipEntry.getName();
if (!zipEntry.isDirectory() && name.contains("imagens/imagem1")) { // Aqui
// pergunta
InputStream is = ClassLoader
.getSystemResourceAsStream(name);
}
}
} catch (Exception e) {
System.out.println(e.getMessage());
e.printStackTrace(); }
}
}
[/code]
pilha de erro:
java.io.FileNotFoundException: C:\Users\claudemir\workspace\webService\ProjetoBanco\bin (Acesso negado)C:\Users\claudemir\workspace\webService\ProjetoBanco\bin (Acesso negado)
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.<init>(Unknown Source)
at java.util.zip.ZipFile.<init>(Unknown Source)
at roberto.Teste.main(Teste.java:13)
usuário que executa o eclipse tem as permissões?
faz um teste, tenta abrir o eclipse como administrador e verifica se o erro persiste.
vc percebendo que se trata de problema de permissão do usuário logado, basta dar a permissão para a pasta em questão.
[quote=ribclauport]Eu estou testando o código abaixo na IDE eclipse, e estou tendo o retorno acesso negado, alguém poderia me dizer se tenho que configurar algo para dar certo? ou qual o problema?
public class Teste {
public static void main(String[] args) {
String caminhoJar = System.getProperty("java.class.path");
try {
ZipFile zipFile = new ZipFile(caminhoJar);
Enumeration<? extends ZipEntry> entries = zipFile.entries();
while (entries.hasMoreElements()) {
ZipEntry zipEntry = (ZipEntry) entries.nextElement();
String name = zipEntry.getName();
if (!zipEntry.isDirectory() && name.contains("imagens/imagem1")) { // Aqui
// pergunta
InputStream is = ClassLoader
.getSystemResourceAsStream(name);
}
}
} catch (Exception e) {
System.out.println(e.getMessage());
e.printStackTrace(); }
}
}
[/code]
pilha de erro:
java.io.FileNotFoundException: C:\Users\claudemir\workspace\webService\ProjetoBanco\bin (Acesso negado)C:\Users\claudemir\workspace\webService\ProjetoBanco\bin (Acesso negado)
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.<init>(Unknown Source)
at java.util.zip.ZipFile.<init>(Unknown Source)
at roberto.Teste.main(Teste.java:13)
Agradeço qualquer ajuda.
[/quote]
Pelo que parece o arquivo não está sendo encontrado, olha a mensagem de erro: java.io.FileNotFoundException:[color=red] [/color]
E porque ao invés de vc usar
System.getProperty("java.class.path");
Você não usa o:
System.getProperty("user.dir");
Se eu não me engano o java.class.path retorna o caminho de de todos os JARs do seu projeto, isso explicaria o porque seu arquivo não está sendo encontrado.