Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# Erreur javascript

Envoyé par : samdfool

Date : 10/03/2005 03:44

Saluzavous,

Je découvre totalement le xul et suis pas trés fort en javascript

J'ai juste fait un petit script php qui diffuse le xul

Normalement, j'ai correctement configuré les types mime

Simplement, sur un onclick de bouton, pour recharger la page d'un <browser>, la console javascript, me dit :

Erreur : uncaught exception: Permission refusée d'obtenir la propriété UnnamedClass.classes

plus plusieurs erreurs du type :

Erreur : gBrowser is not defined
Fichier Source : chrome://tabextensions/content/browserService.js
Ligne : 2538

Donc, une erreur dans une extension ajoutée

En regardant ce dernier code, effectivement, il n'y a pas de

var gBrowser;

mais, il n'y en a pas plus pour d'autres ... ...mais je m'avance... Y'aurait-il un problême de déclaration de classes pour le javascript

J'ai bien relu le tutoriel, mais je ne fais que diffuser le xul, par mon serveur !?

Je suis un peu perdu, sauriez-vous m'orienter, svp ?

# Re: Erreur javascript

Envoyé par : samdfool

Date : 10/03/2005 12:46

mon code xul, tiré du tuto, est tout simple :

<?xml version='1.0' encoding='ISO-8859-1'?>
<?xml-stylesheet href='chrome://global/skin/' type='text/css'?> 
<window id='wnd_main' orient='horizontal' 
        xmlns=http://www.mozillaorg/keymaster/gatekeeper/there.is.only.xul'
        xmlns:html='http://www.w3.org/1999/xhtml'>
       <vbox flex='1'>
               <hbox pack="center" align="center" height='100'>
                       <label control='btn_home' value='Test'/>
                       <button id='btn_home'
                               label='Test'
                               default='true'
                               style="max-width: 100px;"
                               onclick="document.getElementById('box_browser').reload();"/>
               </hbox>
               <splitter collapse="before"><grippy/></splitter>
               <browser id="box_browser" flex='1' src="http://www.google.fr"/>
       </vbox>
</window>

# Re: Erreur javascript

Envoyé par : samdfool

Date : 11/03/2005 02:00

Bon, j'ai trouvé une méthode :

function loadPage(url) {
               browser = document.getElementById("box_browser")
               browser.setAttribute("src", url)
       }

# Re: Erreur javascript

Envoyé par : Julien Appert

Date : 11/03/2005 11:12

plutôt qu'un reload() simple, essaye location.reload() Ca devrait mieux fonctionner.

# Re: Erreur javascript

Envoyé par : samdfool

Date : 11/03/2005 11:45

oui, location.reload(), marche mieux effectivement, mais je n'ai pas les fonctions de l'objet, pour faire autre chose :

Le pb, c'est qu'apparemment je n'ai pas la dernière version d'installée :

sur http://www.mozilla.org/xpfe/xulref/brows(..), il n'y a que quelques attributs, dont l'attribut "src", d'où l'utilisation de setAttribute.

Tandis que sur http://xulfr.org/wiki/Reference/Xul/brow(..), il y a bien les méthodes que j'essaie d'utiliser.

Donc...

# Re: Erreur javascript

Envoyé par : samdfool

Date : 11/03/2005 12:07

NB : Je suis sous Mozilla 1.7.5, donc, je comprend vraiment pas, surtout d'aprés cette page

... Je cherche ce qu'il me manque...

# Re: Erreur javascript

Envoyé par : laurentj

Date : 11/03/2005 17:13

oulah, la réference sur http://www.mozilla.org/xpfe/xulref/brows(..) est archie obsolète. Faut oublier ces pages.

Celle du wiki de xulfr est largement incomplète.

Si tu veux avoir un référence complète et à jour des éléments XUL, c'est sur http://xulplanet.com/references/elemref/ qu'il faut aller.

Conçernant ton problème, je ne sais pas.

# Re: Erreur javascript

Envoyé par : samdfool

Date : 12/03/2005 01:01

Ouaip, merci, je veux bien l'utiliser, l'inconvénient, c'est que justement, les nouvelles méthodes ne marchent pas chez moi !?...

Au sec...

# Re: Erreur javascript

Envoyé par : samdfool

Date : 12/03/2005 01:10

Bon, je suppose que le pb vient de là :

XUL that is loaded from a remote site is subject to security restrictions so you cannot call native components or read files and preferences. You can perform these operations only with signed code or code installed as chrome.

traduit par :

Il est possible d'ouvrir des fichiers XUL directement du système de fichiers ou à partir d'un site Web distant. Cependant, ils seront restreints dans les types d'opérations qu'ils peuvent faire, et certains aspects de XUL ne fonctionneront pas.

Je vais modifier la traduction pour ajouter la précision de problêmes liés à l'appel de composants natifs !!!

# Re: Erreur javascript

Envoyé par : samdfool

Date : 12/03/2005 01:11

Arrgh, elle n'est pas éditable !

SVP, modifiez cette page pour cette précision, la preuve que ça peut être utile !

Merci

# Re: Erreur javascript

Envoyé par : samdfool

Date : 12/03/2005 01:41

Base d'explications pour le problême d'exécution de code sur un serveur distant :

http://www.xulplanet.com/ndeakin/article(..)

# Tentative de correction du problême

Envoyé par : samdfool

Date : 12/03/2005 01:53

J'ai trouvé cette info :

In order to configure Mozilla to enable the use of these security privileges, you must set the preference signed.applets.codebase_principal_support to true. You can do this either by using about:config to add the boolean preference, or modifying the user.js preferences file in your Mozilla profile directory to contain the line :

user_pref("signed.applets.codebase_principal_support", true);

ref: http://bclary.com/2004/07/10/spider/cont(..)

Si tout fonctionne, faudrait mettre ça sur le wiki !?...

Je sais, je fais ma sauce dans mon coin, sur ce post... :S

# Re: Erreur javascript

Envoyé par : samdfool

Date : 12/03/2005 02:10

Note, pour modifier la propriété :

Make sure you edit the preferences file while Mozilla isn't running (or else it will overwrite your changes when you quit), and remember that when you deploy your XUL application you should sign it to ensure your users' security.

ref : http://www.oreillynet.com/pub/a/mozilla/(..)

J'espère que ça interresse qq1 !?...

# Re: Erreur javascript

Envoyé par : laurentj

Date : 15/03/2005 13:43

Oui effectivement, on ne peut pas faire appel aux composants XPCOM. Cela concerne d'ailleurs tout les composants XPCOM.

Conernant la traduction : l'original a sûrement évolué. Je pense que tu parles du tutoriel. Mais de quelle page s'agit-il ?

Bon sinon, l'histoire de la pref &co, c'est du bricolage (je vois mal un user aller dans ses prefs pour pouvoir executer l'appli web), surtout que ça ne permet pas de tout faire.

# Re: Erreur javascript

Envoyé par : samdfool

Date : 15/03/2005 16:36

Ouaip, c'est du bricolage ... :/

J'ai un peu d'autres chats à fouetter dans l'immédiat... :P

Pour la page :

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.