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

Struts 1 Java Discussion :

Affichage dynamique d'une image


Sujet :

Struts 1 Java

  1. #1
    Membre du Club Avatar de hadler
    Inscrit en
    Décembre 2004
    Messages
    91
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Décembre 2004
    Messages : 91
    Points : 63
    Points
    63
    Par défaut Affichage dynamique d'une image
    Bonjour,

    Dans mon action, je génère une image que je voudrais afficher ensuite dans ma jsp.
    Comment puis je arriver à faire cela ?

    J'ai tenté d'enregistrer cette image sur mon disque et de l'afficher ensuite à partir d'une balise <img>, mais j'ai juste réussi à faire planter ma page avec un permgen out of memory de mon serveur weblogic.

    Côté action, je récupère le byte[] de mon image.
    Quelqu'un a une idée de comment je peux afficher mon image dans la jsp ?

    merci d'avance.

  2. #2
    Membre du Club Avatar de hadler
    Inscrit en
    Décembre 2004
    Messages
    91
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Décembre 2004
    Messages : 91
    Points : 63
    Points
    63
    Par défaut
    J'ai continuer à avancer, mais je suis toujours coincé.

    J'ai créé une action qui se charge d'afficher l'image dans ma jsp.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <action path="/id" type="com.struts.action.AfficheIDAction" scope="request">
                <forward name="success" path="/WEB-INF/views/id.jsp" />
    </action>
    dans mon action ça donne
    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
    public class AfficheIDAction extends Action {
     
        private static final Logger logger = MyLogger.getLogger(Class.class);
     
        @Override
        public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
     
     
            iIDManagerClient manager = new IDManagerClientImpl() ;
            long id = manager.getID() ;
     
            byte[] input = manager.getCode(id) ;
     
            File file = new File("id + ".png");
            logger.info("Création du fichier " + file.getCanonicalPath()) ;
            OutputStream out = new FileOutputStream(file);
            out.write(input);
            out.close();
     
            /*response.setContentType("image/png");
     
            OutputStream os = response.getOutputStream();
    		os.write(input);
            os.close();*/
     
            try {
                OutputStream os = response.getOutputStream();
                int count;
     
                InputStream is = new FileInputStream(file) ;
                byte buf[] = new byte[4096];
     
                while ((count = is.read(buf)) > -1)
                    os.write(buf, 0, count);
     
     
                os.close();
            }
            catch (IOException error) {
                logger.info("ioexception... " + error) ;
            }
     
            return mapping.findForward("success") ;
        }
    }
    Comme vous pouvez le voir, j'ai tenté d'utiliser directement mon byteArray et de passer par un File temporaire, mais j'ai le même résultat des deux côtés : rien du tout, et aucune erreur.

    au niveau de l'affichage jsp, je ne sais pas quoi utiliser non plus. Je passe par un tag embed à défaut de mieux, mais mon erreur vient peut être de là aussi.
    J'ai testé un <img> mais sans plus de succès.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <!--<img src="http://localhost:7001/hw/id.do"/>-->
                    <embed src="http://localhost:7001/hw/id.do" width="100%" height="550"/>
    Qu'est ce que j'ai zappé dans ma procédure ?

  3. #3
    Membre du Club Avatar de hadler
    Inscrit en
    Décembre 2004
    Messages
    91
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Décembre 2004
    Messages : 91
    Points : 63
    Points
    63
    Par défaut
    c'est bon j'ai trouvé mon erreur, il suffisait de faire un return null dans l'action.

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

Discussions similaires

  1. Affichage dynamique d'une image
    Par muppetshow dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 15/07/2009, 15h37
  2. Affichage dynamique d'une image (logo)
    Par ramaro dans le forum Reports
    Réponses: 2
    Dernier message: 23/04/2008, 13h46
  3. Affichage dynamique d'une image
    Par snooze dans le forum Langage
    Réponses: 2
    Dernier message: 24/03/2008, 16h41
  4. javascript sous IE 7 pour un affichage dynamique d'une image
    Par ohhh.gringo dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 31/05/2007, 17h43
  5. [Tableaux] Ajouter l'affichage dynamique d'une image
    Par leloup84 dans le forum Langage
    Réponses: 3
    Dernier message: 16/02/2006, 10h14

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