Ola a todos. Sou iniciante em Java mas me jogaram uma bigorna pra matar no peito e chutar pra gol.
Será que alguem poderia me ajudar?
preciso fazer um applet (eu sei, alguem vai falar que ta fora de moda, mas o sistema é antigo) que exina uma imagem jpg ou tiff no disco local (e nao no servidor)
Pesquisando encontrei um código fonte que faz isso, mas ai vi que teria problemas com segurança. E foi o que aconteceu. Pesquisei mais um pouco e vi que teria que mexer no arquivo java.policy no diretório C:\Arquivos de programas\Java\jre6\lib\security adicionando
// grant ability to read and write any file in current directory
// Note: this is equivalent to ${user.dir}/*
grant codeBase "http://localhost/teste/-" {
permission java.io.FilePermission "C:\\Projetos\\MDIPictBox\\*", "read,write";
Mas não tive sucesso. Me parece que tenho que setar isso via código também, mas não faço a minima ideia de como fazer. To tentando pesquisar no Google, mas ta dificil. Será que alguém tem algum tutorial de como fazer que o JVM dê permissão pra um applet ler um arquivo que está em disco?
Segue o código do applet:
public class MdiPictBox extends Applet {
private Image loadImage(String name)
{
Image result = null;
MediaTracker tracker = new MediaTracker(this);
Toolkit toolkit = Toolkit.getDefaultToolkit();
result = toolkit.getImage(name);
tracker.addImage(result, 0);
try {
tracker.waitForAll();
}
catch (InterruptedException e) {
return null;
}
return result;
}
public void paint(Graphics g) {
Image img = loadImage(getParameter("file"));
if(img == null)
g.drawString("Erro", 20, 20);
else
g.drawImage(img, 0, 0, null);
}
}
Segue o código do html