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 :

Besoin de conseil java/php/jsp [Débutant(e)]


Sujet :

Servlets/JSP Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2008
    Messages : 11
    Par défaut Besoin de conseil java/php/jsp
    Bonjour,
    Je suis actuellement en stage et je dois réaliser une application qui permet à un client distant de visualiser les manipulations faites par un utilisateur, via l'intranet un peu comme VNC mais en aurorisant seulement certaines fenêtres).

    J'ai fait une application java qui permet de faire des captures de la fenetre active et envoie l'image sur le serveur.
    J'ai fait une page web qui contient seulement l'image.

    Maintenant, j'ai beaucoup de mal à faire communiquer l'application java et la page web pour synchroniser l'actualisation de l'image dans le serveur et sur la page.

    J'ai essayé plusieurs méthodes, la première était d'envoyer des images sur le serveur tant que la fenetre est active et de réactualiser la page web toutes les secondes par exemple.
    Mais cela ne marchait pas bien car parfois la page se réactualisée pendant que l'image était en train d'être enregistrée sur le serveur.

    La deuxième méthode était de lancer un jar java qui effectue une seule capture à partir de la page web (en php) et d'afficher l'image puis d'actualiser la page. Cela n'a pas marché car j'obtenais des images noires (à cause des droits d'accès je pense).

    Maintenant, je me renseigne sur les servlets et je me demande si ce serait la solution.

    Je suis un peu perdue car je suis débutante et je ne sais pas comment procéder.

    Quelqu'un pourrait-il me conseiller ?

    PS : j'espère ne pas m'être trompée de sous-forum, je n'ai pas trouvé ce qui correspondait à mon problème.

  2. #2
    Membre Expert

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 301
    Par défaut
    Hello,

    une servlet, ce n'est rien de plus qu'on programme qui tourne côté serveur. ça sait faire tout ce que sait faire php, et un peu plus, mais le principe de fonctionnement est le même.

    Entre php ou servlet, il faut choisir en fonction de ce qui est disponible... As-tu déjà un hébergement php? Si oui, alors fait la partie serveur en php, car un hébergement servlet/jsp est encore très cher (le mien est plus de 40CHF/mois).

    Maintenant, pour ton problème de mise en place, je pense que de lier la page web directement à l'url du fichier image physique sur le serveur n'est pas forcément une bonne idée.

    Essaie plutôt de lier l'image sur un script php (ou sur une servlet, si tu choisis cette option) qui renverra les données de l'image (tu auras donc un contrôle sur les données que tu envoie)

    index.html
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    // HTML
    <html>
        <head>
            <meta http-equiv="refresh" content="1"/>
        </head>
     
        <body>
            <img src="/getimage.php" alt="No image found!" />
        </body>
    </html>
    getimage.php
    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
     
    <?php
    session_start();
     
    $data = null;
     
    // Si une nouvelle image est dispo
    if(hasNewData()) {
        $data = getNewData(); // On charge les données
        $_SESSION['lastimage'] = $data;
    } elseif(isset($_SESSION['lastimage'])) {
        $data = $_SESSION['lastimage'];
    } else {
        return;
    }
     
    header("Content-type: image/jpeg");
     
    echo $data;
     
     
    //---
    function hasNewData() {
        /* recherche si des nouvelles données 
            sont complètes, par exemple via une base de données, 
            ou autre tests */
    }
     
    function getNewData() {
          /* retourne les nouvelles données, par exemple via requête sur bdd ou lecture d'un fichier avec file_get_contents*/
    }
    ?>
    Un truc du genre devrait fonctionner correctement


  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2008
    Messages : 11
    Par défaut
    Merci !
    J'avais déjà essayé quelquechose du même genre.
    ça marche bien sous firefox mais pas sous IE car on voit du blanc entre deux rafraîchissements de la page et ça ne rend pas très bien.
    Du coup, j'ai enlevé la balise <meta> qui actualise la page et je l'ai remplacée par une fonction javascript qui actualise seulement l'image.

    Mais le php devient inutilisable. Pour l'instant, je me suis arrêtée sur une solution moyennement efficace où je tourne avec 3 images qui s'affichent les unes sur les autres.

  4. #4
    Membre Expert

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 301
    Par défaut
    Citation Envoyé par sbalague Voir le message
    Mais le php devient inutilisable.
    Pourquoi? y'a pas de raison...

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2008
    Messages : 11
    Par défaut
    Je pense que c'est parce que du coup la page n'est pas actualisée complètement, donc le php n'est pas réexécuté.
    C'est possible de réexécuter le php sans actualiser la page entière

  6. #6
    Membre Expert

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 301
    Par défaut
    tout dépend du javascript que t'as écrit... mais y'a pas de raison que le php ne soit pas exécuté...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 10
    Dernier message: 12/03/2013, 23h28
  2. [RegEx] Besoin de conseils pour script PHP/MySQL.
    Par ABandApart dans le forum Langage
    Réponses: 0
    Dernier message: 05/08/2010, 12h27
  3. Besoin Fonction JAVA pour JSP
    Par Danyboy11 dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 16/03/2007, 09h04
  4. Projet Java - besoin de conseils
    Par Machiavel dans le forum Java EE
    Réponses: 9
    Dernier message: 26/12/2006, 13h53
  5. Besoin de conseil php et mysql
    Par virus2000fr dans le forum Administration
    Réponses: 6
    Dernier message: 24/02/2006, 10h39

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