Envoyé par : hysah
Date : 23/09/2008 09:30
Bonjour. Je suis en train de développer une extension qui utilise un ensemble de classes Java. Je m'appuie sur une extension existante http://simile.mit.edu/wiki/Java_Firefox_Extension pour instancier mes objets java et les utiliser dans mes scripts js de mon extension.
Par exemple, dans un script js, on peut créer un objet User de la manière suivante :
var user = foo.wrappedJSObject._packages.getClass("monPackage.User").n(nom, prenom, age);
nom, prenom, et age correspondent aux paramètres attendu par le constructeur de la classe Java User.
L'objet user obtenu peut ensuite etre manipulé comme un objet java dans le script js.
Cependant j'ai un problème :
J'ai une fonction createPerson qui crée un objet comme ci-dessus.
JavaFirefoxExtension.createPerson = function() { var nom= truc; var prenom= machin; var age = hashAlgo = chouette; var user = foo.wrappedJSObject._packages.getClass("monPackage.User").n(nom, prenom, age); }
Ce cas est OK mon objet est bien créé
JavaFirefoxExtension.createPerson= function(nom, prenom, age) { var user = foo.wrappedJSObject._packages.getClass("monPackage.User").n(nom, prenom, age); }
lors de l'appel à cette fonction mon objet "user" n'est pas instancié, j'obtiens l'erreur java suivante :
java.security.PrivilegedActionException: java.lang.reflect.InvocationTargetException at java.security.AccessController.doPrivileged(Native Method) at sun.plugin.liveconnect.SecureInvocation$2.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at sun.plugin.liveconnect.SecureInvocation.CallMethod(Unknown Source) Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at sun.plugin.javascript.JSInvoke.invoke(Unknown Source) at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at sun.plugin.javascript.JSClassLoader.invoke(Unknown Source) at sun.plugin.liveconnect.PrivilegedCallMethodAction.run(Unknown Source) ... 4 more Caused by: java.lang.NoSuchMethodError: No constructor is applicable on provided arguments at edu.mit.simile.javaFirefoxExtensionUtils.ClassWrapper.callConstructor(ClassWrapper.java:187) ... 14 more
Merci de votre aide.
Il n'est plus possible de poster des messages dans ce forum.
Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.
Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™
sont des marques de la fondation Mozilla.