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

API standards et tierces Java Discussion :

[JDic] Destop.mail(message)


Sujet :

API standards et tierces Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    255
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 255
    Par défaut [JDic] Destop.mail(message)
    Salut

    J'ai fais une application Web qui permet à un client de se connecter à un serveur d'application (Tomcat) et une applet est chargée via le navigateur.
    Cette applet utilise et exécute une classe qui exécute et lance le client mail par défaut sur la machine cliente (Outlook, Lotus Notes)

    J'ai le code suivant dans ma classe (celle qui est exécutée par l'applet):

    public class MyMessage {

    public MyMessage(){

    }
    public static void main (String[] args){
    MyMessage mess = new MyMessage();
    try {
    mess.buildMessage();
    } catch (DesktopException e) {
    e.printStackTrace();
    } catch (IOException e) {
    e.printStackTrace();
    }
    }
    public void buildMessage() throws DesktopException, IOException{

    Message mess = new Message();

    mess.setToAddrs(null);

    mess.setSubject("SUJET");

    mess.setCcAddrs(null);

    mess.setBody("BODY");

    mess.setBccAddrs(null);

    Desktop.mail(mess);
    }
    }
    Quand l'applet est chargée sur le poste client, le message suivant s'affiche dans la console JAVA du navigateur:

    org.jdesktop.jdic.init.JdicInitException: java.io.IOException: Syntaxe du nom de fichier, de répertoire ou de volume incorrecte
    at org.jdesktop.jdic.init.JdicManager.initShareNative(Unknown Source)
    at org.jdesktop.jdic.desktop.internal.ServiceManager.<clinit>(Unknown Source)
    at org.jdesktop.jdic.desktop.Desktop.mail(Unknown Source)
    at MyMessage.buildMessage(MyMessage.java:57)
    at SendMessageApplet.<init>(SendMessageApplet.java:25)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at java.lang.Class.newInstance0(Unknown Source)
    at java.lang.Class.newInstance(Unknown Source)
    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)
    Caused by: java.io.IOException: Syntaxe du nom de fichier, de répertoire ou de volume incorrecte
    at java.io.WinNTFileSystem.canonicalize0(Native Method)
    at java.io.Win32FileSystem.canonicalize(Unknown Source)
    at java.io.File.getCanonicalPath(Unknown Source)
    ... 16 more
    Laligne 57 citée (et soulignée en rouge dans la pile) correspond à la lige de code
    Desktop.mail(mess);
    Quelqu'un sait-il d'ou cela peut provenir... ?

    Merci

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    255
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 255
    Par défaut
    Ce message apparaît tout le temps mais n'empeche pas l'appli de fonctionner. En revanche, le véritable problème vient de ce message :

    java.lang.UnsatisfiedLinkError: no jdic in java.library.path
    at java.lang.ClassLoader.loadLibrary(Unknown Source)
    at java.lang.Runtime.loadLibrary0(Unknown Source)
    at java.lang.System.loadLibrary(Unknown Source)
    at org.jdesktop.jdic.desktop.internal.impl.WinAPIWrapper.<clinit>(Unknown Source)
    at org.jdesktop.jdic.desktop.internal.impl.WinUtility.getDefaultMailer(Unknown Source)
    at org.jdesktop.jdic.desktop.internal.impl.ServiceManagerStub.getService(Unknown Source)
    at org.jdesktop.jdic.desktop.internal.ServiceManager.getService(Unknown Source)
    at org.jdesktop.jdic.desktop.Desktop.mail(Unknown Source)
    at MyMessage.buildMessage(MyMessage.java:57)
    at SendMessageApplet.<init>(SendMessageApplet.java:25)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at java.lang.Class.newInstance0(Unknown Source)
    at java.lang.Class.newInstance(Unknown Source)
    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)
    Ce message apparaît dans la console JAVA du navigateur, lorsque le fichier jdic.dll n'est pas présent dans le rep BIN de java du client...

    Or rien n'est censé être installé sur le poste du client au moment ou il invoque l'applet, c'est l'applet qui charge le jdic.dll de la façon suivante :

    <APPLET Archive="MyMessage.class,jdic.jar,jdic.dll,packager.jar" CODE="SendMessageApplet.class" Width="300" Height="50">
    Votre navigateur ne supporte pas les applets.
    </APPLET>
    1/ Mon problème est que le client n'est pas censé avoir de JAVA installé sur sa machine...donc le jdic.dll ne peu pas se trouver dans le répertoire BIN de java
    2/ Le jdic.dll est bien chargé quand l'applet est invoquée, mais il n'est pas chargé dans le repertoire BIN de java (même dans le cas où java serait installé)...

    Comment faire car à priori, le jdic.dll ne sera jamais dans le répertoire BIN de java (soit java non installé sur le client, soi java installé mais jdic.dll chargé ailleurs)?

Discussions similaires

  1. [E-mail] Message de confirmation
    Par hadjiphp dans le forum Langage
    Réponses: 2
    Dernier message: 25/08/2009, 23h58
  2. [Mail] message non visible
    Par nicerico dans le forum Langage
    Réponses: 3
    Dernier message: 31/07/2008, 17h23
  3. Windows Mail: message collé dans la boîte d'envoi
    Par annedeblois dans le forum Windows Vista
    Réponses: 2
    Dernier message: 06/03/2008, 21h38
  4. [Windows mail] message corrompu
    Par L. Sierra dans le forum Windows Vista
    Réponses: 5
    Dernier message: 02/07/2007, 17h51
  5. Réponses: 6
    Dernier message: 19/09/2006, 20h55

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