Forums : XPCom

Aller à la discussion :  Plus récente Plus ancienne

# Erreur javascript lors de l'appel de mon composant XPCOM

Envoyé par : free_zy

Date : 08/10/2005 20:31

Bonjour,

je viens de recommencer a développer un composant XPCOM, je l'ai enregistré dans firefox, dans le component viewer je vois bien mon interface et sa méthode HelloWorld.

Voici sa declaration dans la idl :

#include "nsISupports.idl"

[scriptable, uuid(12C46F4B-099F-4FC0-9E91-02DD67686AAA)]
interface IClientService : nsISupports
{
  void HelloWorld(out short message);
};

dans l'interface :

NS_IMETHOD HelloWorld(PRInt16 *message) = 0;

et son implémentation :

NS_IMETHODIMP ClientService::HelloWorld(PRInt16 *message)
{
*message = 2;
return NS_OK;
}

Mais lorsque j'essaie d'apeller cette méthode de mon composant en javascript en faisant :

function HelloWorld() {
 netscape.security.PrivilegeManager.
 enablePrivilege("UniversalXPConnect");
 obj =  Components.
 classes["@clientservice.com/ClientService;1"].
 getService(Components.interfaces.IClientService);
 
 var res = obj.HelloWorld();
 alert(res);
}

j'ai l'erreur suivante ;

Erreur : uncaught exception: [Exception... "Not enough arguments [IClientService.HelloWorld]"  nsresult: "0x80570001 (NS_ERROR_XPC_NOT_ENOUGH_ARGS)"  location: "JS frame :: file:///C:/xul/clientserviceTest.js :: HelloWorld :: line 4"  data: no]

Avez-vous une idée sur cette erreur vraiment bizarre ?? car apres avoir tourné dans tous les sens je ne pas ou est mon erreur.

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.