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

Servlets/JSP Java Discussion :

Pourquoi ma JSP exécute ma fonction Java ?


Sujet :

Servlets/JSP Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2002
    Messages
    91
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 91
    Par défaut Pourquoi ma JSP exécute ma fonction Java ?
    Bonjour à tous,

    Je ne parviens pas à comprendre pourquoi ma JSP exécute ma fonction Java à l'ouverture de la page.

    L'objectif de ce code est de faire une capture d'écran (coté client) quand celui-ci clique sur le bouton 'CAPTURE'.

    Voici le code de ma JSP :

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
     
    <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
     
    <%@ page import="java.awt.Dimension"%>
    <%@ page import="java.awt.Rectangle"%>
    <%@ page import="java.awt.Robot"%>
    <%@ page import="java.awt.Toolkit"%>
    <%@ page import="java.awt.image.BufferedImage"%>
    <%@ page import="java.io.File"%>
    <%@ page import="javax.imageio.ImageIO"%>
     
    <%! public void CaptureEcran() {
            // Détermine la taille courante de l'écran.
            Toolkit toolkit = Toolkit.getDefaultToolkit();
            Dimension screenSize = toolkit.getScreenSize();
            Rectangle screenRect = new Rectangle( screenSize );
            
            // Création du SreenShot.
            try {
                    Robot robot = new Robot();
                    BufferedImage image = robot.createScreenCapture( screenRect );
                    
                    //Sauvergarde de l'image vers un fichier PNG.
                    String outFileName = "C:\\Temp\\ScreenShot.png";
                    ImageIO.write(image, "png", new File( outFileName ));
            }
            catch( Exception e ) { System.out.println( e.getMessage() ); }
    }
    %>
     
    <html>
    	<head>
    		<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    		<title>CAPTURE D'ECRAN</title>
     
    		<script type="text/javascript">
                            function btnCaptureEcran() {
                                    <%CaptureEcran();%>
                            }
                    </script>
    	</head>
     
    	<form METHOD="POST" NAME="monFormulaire"></form>
     
    	<body>
    		<button onClick="btnCaptureEcran()">CAPTURE</button>
    	</body>
    </html>
    Le problème est que ma fonction CaptureEcran est appelé à l'ouverture de ma page et le bouton ne fait rien.

    Une idée du problème ?
    Merci.

  2. #2
    Membre émérite

    Profil pro
    Technicien
    Inscrit en
    Février 2009
    Messages
    338
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Février 2009
    Messages : 338
    Par défaut
    Bonjour,

    La page jsp est traitée sur le serveur avant d'être envoyée sur le client.
    Le traitement sur le serveur concerne tout le code java (sans tenir compte du javascript).
    Ensuite le javascript et le html seront traités sur le client.

    Pour répondre à ta question : la fonction CaptureEcran est appellée à l'ouverture de la page car elle est exécutée sur le serveur et celui-ci ne tient pas compte du javascript.

    Ensuite, ton bouton ne fait rien car il ne contient pas de code javascript.
    Il y a de grandes changes pour que le client reçoive le code source suivant (le code initial sans la partie java) :

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>CAPTURE D'ECRAN</title>

    <script type="text/javascript">
    function btnCaptureEcran() {
    }
    </script>
    </head>

    <form METHOD="POST" NAME="monFormulaire"></form>

    <body>
    <button onClick="btnCaptureEcran()">CAPTURE</button>
    </body>
    Benoit

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2002
    Messages
    91
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 91
    Par défaut
    Merci pour l'explication

    Par contre, ça veut dire que je ne peux pas faire de capture d'écran sur mon client. J'ai pas l'impression qu'il soit possible de faire ça en JavaScript

  4. #4
    Nouveau candidat au Club
    Inscrit en
    Novembre 2010
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 2
    Par défaut
    Malheureusement c'est pas possible avec java script.

    Mais, tu peux passer le contenu au serveur pour générer l'image et l'afficher en en download: response.setContentType("application/download");

Discussions similaires

  1. Exécuter une fonction java à l'intérieur d'une fonction javascript
    Par nakry dans le forum Général JavaScript
    Réponses: 21
    Dernier message: 18/04/2014, 11h31
  2. JSP : mettre du code java dans une fonction javascript
    Par padraig29 dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 11/08/2010, 10h07
  3. Exécuter une fonction java au démarrage
    Par lducrocq dans le forum JSF
    Réponses: 5
    Dernier message: 02/12/2009, 11h31
  4. Besoin Fonction JAVA pour JSP
    Par Danyboy11 dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 16/03/2007, 09h04
  5. Erreur appel fonction java d'une jsp
    Par itachi38 dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 29/04/2006, 16h51

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