IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

Capture Swing par mail en mode console (Linux)


Sujet :

AWT/Swing Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2002
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 119
    Points : 68
    Points
    68
    Par défaut Capture Swing par mail en mode console (Linux)
    Bonjour,

    Je souhaiterai envoyé par mail une capture d'un JPanel, via une crontab, donc idéalement sans environnement graphique. Le but est en fait de ne pas doublé un développement.

    Voici le code qui me permet de récupérer l'image (dataMonitoringPanel est initialisé avant et hérite de Jpanel)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
               JFrame jFrame = new JFrame();
                jFrame.setLayout(new BorderLayout());
                jFrame.add(dataMonitoringPanel);
                jFrame.setPreferredSize(new Dimension(1000, 1000));
                jFrame.setSize(new Dimension(1000, 1000));
                jFrame.pack();
     
     
                //Création de l'image
                BufferedImage img = new BufferedImage(dataMonitoringPanel.getSize().width , dataMonitoringPanel.getSize().height, BufferedImage.TYPE_INT_RGB);
                Graphics2D g2 = img.createGraphics();
                dataMonitoringPanel.paint(g2);
     
     
                File file = File.createTempFile("tmp_", ".png");
                //File file = new File("c:/dev/temp/test.png");
     
                try {
                    ImageIO.write(img, "png", file);
                } catch (Exception e1) {
                    e1.printStackTrace();
                }
    Voici l'exception :

    java.awt.HeadlessException:
    No X11 DISPLAY variable was set, but this program performed an operation which requires it.
    at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:197)
    at java.awt.Window.<init>(Window.java:534)
    at java.awt.Frame.<init>(Frame.java:420)
    at java.awt.Frame.<init>(Frame.java:385)
    at javax.swing.JFrame.<init>(JFrame.java:180)
    at com.dasbot.hal.client.main.DataAlerteSender.main(DataAlerteSender.java:58)
    Y a t'il une solution pour ne pas avoir cette contrainte ?

    Merci !
    Stéphane

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 073
    Points : 7 978
    Points
    7 978
    Par défaut
    Aucune idée, mais peut être la réponse par ici : http://java.sun.com/developer/techni...ktop/headless/ ?
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Août 2002
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 119
    Points : 68
    Points
    68
    Par défaut
    J'ai essayé en ajoutant -Djava.awt.headless=true, comme indiqué sur le lien, l'erreur à un peu changé (mais au même endroit)

Discussions similaires

  1. Réponses: 22
    Dernier message: 14/09/2013, 21h35
  2. gestion de touches en mode console sous linux
    Par rudyhadoux dans le forum Applications et environnements graphiques
    Réponses: 0
    Dernier message: 03/10/2008, 09h15
  3. [Ubuntu] Démarrage par défaut en mode console
    Par Manumation dans le forum Ubuntu
    Réponses: 3
    Dernier message: 14/11/2007, 10h36
  4. [c#] Envoyer une capture d'une application par mail
    Par nesquik dans le forum Windows Forms
    Réponses: 1
    Dernier message: 04/07/2006, 17h27
  5. Mode console par défaut
    Par sekiryou dans le forum Administration système
    Réponses: 5
    Dernier message: 05/03/2004, 06h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo