Problème de sauvegarde d'un JPanel en JPG [Résolu]

aurel16v 6 Messages postés jeudi 20 janvier 2005Date d'inscription 8 novembre 2006 Dernière intervention - 17 mai 2006 à 10:21 - Dernière réponse : aurel16v 6 Messages postés jeudi 20 janvier 2005Date d'inscription 8 novembre 2006 Dernière intervention
- 17 mai 2006 à 14:48
Bonjour, ô grands développeurs.

J'ai un souci:

J'essai de sauvegarder mon JPanel dans un fichier .jpg, le prob, c'est que quand je lance, ça me marque:

Exception in thread "Thread-6" java.security.AccessControlException: access denied (java.io.FilePermission essai.jpg write)
    at java.security.AccessControlContext.checkPermission(Unknown Source)
    at java.security.AccessController.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkWrite(Unknown Source)
    at sun.plugin.security.ActivatorSecurityManager.checkDelete(Unknown Source)
    at java.io.File.delete(Unknown Source)
    at javax.imageio.ImageIO.write(Unknown Source)
    at org.alov.map.Carte.savePanel(Carte.java:325)
    at org.alov.map.Carte.paint(Carte.java:348)
    at org.alov.map.Carte.updateMap(Carte.java:306)
    at org.alov.map.Carte.notifyStatus(Carte.java:1936)
    at org.alov.map.Carte.broadcastMessage(Carte.java:1824)
    at org.alov.map.Proxi.loadProject(Proxi.java:155)
    at org.alov.map.Carte.run(Carte.java:208)
    at java.lang.Thread.run(Unknown Source)

Et honnetement, j'aime pas ça et je ne sais pas comment autoriser l'écriture... quelqu'un pourrait-il m'aider svp??

code:
public void savePanel(JComponent compo){
BufferedImage image = new
BufferedImage(compo.getPreferredSize().width,
compo.getPreferredSize().height, BufferedImage.TYPE_INT_RGB);
Graphics2D g = image.createGraphics();

g.setRenderingHint(RenderingHints.KEY_FRACTIONALMETRICS,RenderingHints.VALUE_FRACTIONALMETRICS_ON);
g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING,RenderingHints.VALUE_TEXT_ANTIALIAS_ON);

try{
ImageIO.write(image, "jpeg", new File("essai.jpg"));
}
catch (IOException ie){
    System.err.println("write: " + ie.getMessage());
}
image.flush();
}

avec en paramètre d'appel un JPanel...
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Twinuts 5279 Messages postés dimanche 4 mai 2003Date d'inscription 19 septembre 2018 Dernière intervention - 17 mai 2006 à 14:24
3
Merci
Hahahahahaha une applet ......... c'est normal alors

un conseils avant d'utiliser les applet regarde du coté des droits sur les applets

oriente tes recherche du coté des signatures de jar ou des fichier policy

il y a egalement plein d'info sur ce sujet sur le forum

WORA

Merci Twinuts 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 92 internautes ce mois-ci

Commenter la réponse de Twinuts
Twinuts 5279 Messages postés dimanche 4 mai 2003Date d'inscription 19 septembre 2018 Dernière intervention - 17 mai 2006 à 12:19
0
Merci
Salut,

essai avec ca

BufferedImage bi  = ....

.......
//            image png
ImageIO.write(bi, "png", new File("image.png"));

//            image jpg
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("image.jpg"));
JPEGImageEncoder enc = JPEGCodec.createJPEGEncoder(bos);
enc.encode(bi);
bos.close();

WORA
Commenter la réponse de Twinuts
aurel16v 6 Messages postés jeudi 20 janvier 2005Date d'inscription 8 novembre 2006 Dernière intervention - 17 mai 2006 à 14:16
0
Merci
Je te remercie de l'attention que tu portes à mon problème!

J'ai aussi essayer par cette méthode, l'erreur reste la même!!!

Petite précision: je ne sais pas si c'est important, je "débute" un peu en java (habituellement développeur .NET) mais mon application est une applette...
Commenter la réponse de aurel16v
aurel16v 6 Messages postés jeudi 20 janvier 2005Date d'inscription 8 novembre 2006 Dernière intervention - 17 mai 2006 à 14:48
0
Merci
Ha? baahh... je te remercie alors mdrrr je dois dire que je n'y connais pas graaand choose
Commenter la réponse de aurel16v

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.