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

Applets Java Discussion :

appeler une applet dans du html


Sujet :

Applets Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 104
    Par défaut appeler une applet dans du html
    bonjour,
    je voudrais appeler une applet depuis une page html, vu que j'y arrive pas je commance par un exemple trés simple pour comprendre le problème:
    le code du .java est le suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    public class Hello{
     
        public static void main(String[] argv){
        System.out.println("Hello World");
      }
    }
    Dans la index.html j'ai ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Document sans nom</title>
    </head>
     
    <body>
    <applet code="Hello.class" width="32" height="32" alt="pff">
    </applet>
    </body>
    </html>
    je met le .class de ma classe Hello.java dans le meme repertoire que index.html mais ça me donne
    applet Hello notinitieted
    échec de chargement de l'applet java
    pour les erreurs j'ai :

    java.lang.ClassCastException: Hello
    at sun.applet.AppletPanel.createApplet(Unknown Source)
    at sun.plugin.AppletViewer.createApplet(Unknown Source)
    at sun.applet.AppletPanel.runLoader(Unknown Source)
    at sun.applet.AppletPanel.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

    Pouvez vous m'aider?
    Merci

  2. #2
    Membre averti
    Homme Profil pro
    Inscrit en
    Février 2010
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2010
    Messages : 44
    Par défaut
    Ton applet doit ressembler à sa :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public class Hello extends java.applet.Applet{
     
        public void init(){
            System.out.println("Hello World");
        }
     
    }
    A noter que si tu testes ton applet avec Firefox, IE ou autre, je suis pas sûr que tu puisses voir le message. Pour pouvoir voir ce message, tu peux essayer avec l'appletviewer avec la commande suivante dans ton dossier projet : Sinon, modifie ton applet de la façon suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public class Hello extends java.applet.Applet{
     
        public void init(){
            add(new JLabel("Hello World"));
        }
     
    }

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 104
    Par défaut
    OK merci bien ça marche maintenant mais la question reste pour l'applet que je veux mettre en place et que j'ai pris d'un exemple sur internet et qui marche tres bien sur eclipse:
    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
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
     
     
    public class TwainAppletExample extends Applet implements ActionListener, ScannerListener{
     
      int     index = 0;
      String  filename;
      Scanner scanner;
      Button  acquireButton,selectButton,cancelButton;
     
      public TwainAppletExample(){
      }
     
      public TwainAppletExample(String title, String[] argv){    
        JFrame.setDefaultLookAndFeelDecorated(true);
     
        JFrame frame=new JFrame(title);
        frame.addWindowListener(new WindowAdapter() {
          public void windowClosing(WindowEvent ev) {
            stop();System.exit(0);
          }
        });
     
        init();
     
        frame.getContentPane().add(this);
        frame.pack();
        frame.setLocationRelativeTo(null);
        frame.setVisible(true);
     
        start();
      }
     
      public void init(){
        setLayout(new GridLayout(1,3));
        selectButton = new Button("select");
        add(selectButton);
        selectButton.addActionListener(this);
     
        acquireButton = new Button("acquire");
        add(acquireButton);
        acquireButton.addActionListener(this);
     
        cancelButton = new Button("cancel next scan");
        add(cancelButton);
        cancelButton.addActionListener(this);
     
        filename=System.getProperty("user.home")+"\\My Documents\\test";
     
        scanner=Scanner.getDevice();
        scanner.addListener(this);
     
      }
     
      public void actionPerformed(ActionEvent evt){
        try{
          if(evt.getSource()==acquireButton){
            scanner.acquire();
          }else if(evt.getSource()==selectButton){
            scanner.select();
          }else if(evt.getSource()==cancelButton){
            scanner.setCancel(true);
          }
        }catch(ScannerIOException se){
          se.printStackTrace();
        }  }
     
      public void update(ScannerIOMetadata.Type type, ScannerIOMetadata metadata){
     
        if(type.equals(ScannerIOMetadata.ACQUIRED)){
          BufferedImage image=metadata.getImage();
          System.out.println("Have an image now!");
          try{
            ImageIO.write(image, "jpg", new File(filename+index+".jpg"));
            index++;
     
          }catch(Exception e){
            e.printStackTrace();
          }
        }else if(type.equals(ScannerIOMetadata.NEGOTIATE)){
          ScannerDevice device=metadata.getDevice();
     
        }else if(type.equals(ScannerIOMetadata.STATECHANGE)){
          System.err.println(metadata.getStateStr());
        }else if(type.equals(ScannerIOMetadata.EXCEPTION)){
          metadata.getException().printStackTrace();
        } }
     
      public static void main(String[] argv){
        try{
          new TwainAppletExample("Twain Applet Example [2007-11-02]", argv);
        }catch(Exception e){
          e.printStackTrace();
      }}}
    Q'est ce que vais mettre dans la methode init? parceque comme ça, cela donne la même erreure comme tout a l'heure!
    et merci encore une fois

  4. #4
    Membre averti
    Homme Profil pro
    Inscrit en
    Février 2010
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2010
    Messages : 44
    Par défaut
    T'as l'adresse de ton exemple que je puisse jeter un coup d'oeil ?

  5. #5
    Membre confirmé
    Inscrit en
    Octobre 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 104
    Par défaut
    Oui la voila, je l'ai prise de ce forum même :
    http://www.mms-computing.co.uk/uk/co.../twain/applet/

  6. #6
    Membre averti
    Homme Profil pro
    Inscrit en
    Février 2010
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2010
    Messages : 44
    Par défaut
    Hello,

    j'ai essayé de mettre en route l'exemple avec le jar uk.co.mmscomputing.device.twain.applet.jar et le fichier html suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <html>
    <body>
    	<applet code="uk.co.mmscomputing.device.twain.applet.TwainAppletExample.class" archive="uk.co.mmscomputing.device.twain.applet.jar" width="200" height="300" align="left">
    		Message s'affichant si l'applet n'est pas supportée par le navigateur
    	</applet>
    </body>
    </html>
    en mettant le jar et le fichier html dans le même dossier sa marche.

    Dans ton cas c'est un peu différent parce que tu pars des sources et pas des binaires comme dans mon cas. Je peux que te conseiller de te débarrasser d'Eclipse le temps de comprendre comment les applets marchent...

    Pour remettre l'exemple en route du doit procéder de la façon suivante :

    1. Tu télécharges tous les fichiers .java nécessaire
    2. Tu les ranges [B][correctement/B] en fonction de leur paquet
    3. Tu recompiles le tout
    4. Tu signes ton applet (obligatoire pour avoir l'accès à des fichiers sur la machine hôte, se qui est ton cas)

  7. #7
    Futur Membre du Club
    Inscrit en
    Juin 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 4
    Par défaut Applet
    Lorsque j'exécute mon applet avec netbeans, il marche sans problème. mais si je dois l'exécute directement dans un navigateur, il m'envoie ce message :
    java.security.AccessControlException: access denied (java.lang.RuntimePermission accessClassInPackage.sun.jdbc.odbc)
    java.lang.NullPointerException

    SVP aidez moi. Je suis encore un apprenant

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 14
    Par défaut
    Comment se construit ton applet ?

    Il faut que tu possède une class héritant de Applet et contenant une méthode "init". Normalement tu l'a fait avec le "hello world".

    Après vérifie que tu as bien compiler tes fichiers. Si c'est le cas, dans le répertoire "built" de ton projet il possède les différents .class.

  9. #9
    Invité de passage
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 1
    Par défaut
    Bonjour à tous,
    Les liens vers le forum mms-computing ne sont plus valides. Ils ont dû sécuriser leur site et pas moyen de s'inscrire.

    En cherchant un peu, j'ai pu récupérer les librairies (twain et sane) via un projet héberger sur sourceforge et google code (openbizcard) mais j'ai une erreur (uk.co.mmscomputing.device.twain.TwainIOException: Cannot load Twain Source Manager.)

    Si quelqu'un l'a encore, est ce que je pourrais récupérer le fichier: uk.co.mmscomputing.device.twain.applet.jar ? ou encore mieux, si quelqu'un sait comment s'identifier sur leur site...

    Je voudrais savoir aussi s'il y a des limitations selon qu'on soit en 32/64 bits et sous Mac/Linux/Win ? J'ai vu que les librairies payantes tiennent compte de ces params mais j'ai pas encore pu tester.

    Merci de votre aide,

  10. #10
    Membre actif
    Inscrit en
    Avril 2010
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 27
    Par défaut
    Bonsoir
    J'ai créé un simple exemple d'applet et elle s'affiche bien dans mon navigateur fireFox.
    Puis j'ai passé à créer mon applet qui représente un graphe orienté but en l'exécutant elle marche bien mais si je fais son appel dans un fichier html j'arrive pas
    Pouvez vous m'aider je serais reconnaissante et c é urgent SVP
    Merci d'avance.

  11. #11
    Membre averti
    Homme Profil pro
    Inscrit en
    Février 2010
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2010
    Messages : 44
    Par défaut
    Bonsoir
    J'ai créé un simple exemple d'applet et elle s'affiche bien dans mon navigateur fireFox.
    Puis j'ai passé à créer mon applet qui représente un graphe orienté but en l'exécutant elle marche bien mais si je fais son appel dans un fichier html j'arrive pas
    Pouvez vous m'aider je serais reconnaissante et c é urgent SVP
    Merci d'avance.
    Heu.... je pense que sa à rien à voir avec la discussion originale.

    C'est pas très claire ton problème mais à parier que c'est lié à un jar pour ton graphe orienté (genre le jar de jGraphT ou un truc du genre) ?

    Sinon, faut en dire un peu plus sur ton projet.

    @+

Discussions similaires

  1. Réponses: 0
    Dernier message: 20/02/2010, 10h29
  2. Réponses: 3
    Dernier message: 21/07/2009, 10h57
  3. Afficher une applet dans une page html
    Par raogui dans le forum Applets
    Réponses: 2
    Dernier message: 01/05/2009, 21h11
  4. insertion d'une applet dans une page html
    Par Copps dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 18/11/2005, 14h26
  5. [Applet] Ouvrir une applet dans une page HTML
    Par debutant java dans le forum Applets
    Réponses: 4
    Dernier message: 04/06/2004, 17h11

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