Forums : Plateforme Mozilla

Aller à la discussion :  Plus récente Plus ancienne

Aller à la page :  1 2 3 4 5

# Re: compilation xulrunner cvs mais version stable

Envoyé par : chris

Date : 12/06/2006 04:51

Et bien, moi, je ne comprends rien à cet exemple. J'ai étudié ces sources dans tous les sens (et pas depuis aujourd'hui), mais je ne vois pas à quoi sert ce aliasName, où on configure la connexion à la base mysql (host, base, user, password, port etc...).

Sur ces screenshots (http://eu.mozdev.org/Brussels2003/talks/(..)), j'ai pu voir une fenêtre ou se mettaient ces informations. Il me semble qu'il faille faire un addAlias au préalable, mais quand je lis mozilla/extensions/sql/base/public/mozISqlService.idl, je vois :

mozISqlConnection getConnection(in nsIRDFResource aAlias);

/**
 * Opens and returns a new connection to a database. The user will be
 * prompted for a username and password.

Je ne veux pas de fenêtre qui demande un user et un password moi. En plus, de ce que j'en comprends, c'est qu'après il faut traiter une ressource RDF retournée, ce que je ne sais absolument pas faire.

Je n'y comprends vraiment rien. Pourquoi diable est-ce si compliqué ?

Je poursuis mes investigations, en ayant le sentiment de tourner en rond puisque je suis revenu une semaine en arrière, et je suis à 2 doigts de laisser tomber.

# Re: compilation xulrunner cvs mais version stable

Envoyé par : laurentj

Date : 12/06/2006 17:42

En regardant les IDL, tout me parait clair à moi :

  • L'alias : c'est un nom que tu donnes à ta connection, ça evite d'avoir à indiquer à chaque fois le user/passw &cie à chaque fois que tu veux effectuer une connexion
  • pour la configuration de la connexion, rien de plus simple : méthode addAlias du mozISqlService.
  • pour se connecter : methode getAlias, qui te renvoi les infos de connection sous forme de ressource RDF (on est d'accord, pourquoi en rdf ?), et tu passes ensuite cette ressource RDF à getConnection (ou getNewConnection) pour récupèrer un objet mozISqlConnection et lancer ensuite tes requêtes SQL.
  • Pour les résultats : tu récupères un objet de type mozISqlResult qui permet d'acceder aux résultats. Sachant que cet objet est aussi de type nsIRDFDataSource. En clair, tu peux le passer directement à un element xul qui possède un template (voir propriété database), pour générer du xul facilement (voir les exemples tests dans l'extension)

# Re: compilation xulrunner cvs mais version stable

Envoyé par : chris

Date : 12/06/2006 19:51

Je veux bien croire que tout te paraisse clair, seulement, moi, ça ne l'est pas.

La fonction addAlias ne reçoit pas de User/Password. Je ne vois pas comment ça peut donc éviter de les indiquer à chaque fois.

Mais si tout est clair pour toi, je ne suis pas contre un exemple de code complet en js permettant la connexion à mysql, une requête sql quelconque, et exploitation en JS du résultat.

# Re: compilation xulrunner cvs mais version stable

Envoyé par : laurentj

Date : 12/06/2006 23:36

En fait je viens de relire l'IDL : effectivement, on ne donne pas le user/password. En lisant le code source de la méthode getNewConnexion, le service demande effectivement à l'utilisateur un login password via le prompt. C'est effectivement embetant même si cela a un avantage si j'ai bien compris : le login/password est ainsi géré par le gestionnaire de mot de passe.

Cela dit, on est en fait pas obligé de passer par le mosISqlService. Tu peux instancier toi-même directement une connexion. Il y a un objet connexion par type de base de donnée : ils ont chacun pour contract id "@mozilla.org/sql/connection;1?type=XXXX" où xxxx est le nom du type de base de donnée, "mysql" par ex.

et ensuite tu appelles la méthode init de l'objet connection, à laquelle tu passes toutes les infos de connexions, y compris le login/mot de passe. Le reste, je te l'ai donné (et voir encore une fois, les exemples sqltests pour l'exploitation des résultats, notament leur utilisation dans un template).

# Re: compilation xulrunner cvs mais version stable

Envoyé par : chris

Date : 13/06/2006 00:38

Merci Laurent, mais c'est exactement ce que j'essaye de faire depuis le début de ce fil ;-) et sans succès...

Quand je dis que je tourne en rond :-)

# Re: compilation xulrunner cvs mais version stable

Envoyé par : chris

Date : 11/07/2006 22:14

Bonjour,

Comme j'ai enfin réussi à faire ce que je voulais (xulrunner stable avec connexion mysql, sous Linux), et que tout le monde ne lit probablement pas la mailing-list, je rapporte ici ce que j'y ai donné comme conclusion :

OS : Gentoo Linux

Mon mozconfig :

export MOZILLA_OFFICIAL=1
export MOZ_ENABLE_MYSQL=1
export MOZ_MYSQL_INCLUDES=/usr/include/mysql/
export MOZ_MYSQL_LIBS=/usr/lib/mysql/
mk_add_options MOZILLA_OFFICIAL=1
mk_add_options MOZ_ENABLE_MYSQL=1
mk_add_options MOZ_CO_PROJECT=xulrunner
ac_add_options --enable-application=xulrunner
ac_add_options --enable-extensions=default,sql
ac_add_options --disable-debug
ac_add_options --disable-tests
ac_add_options --disable-optimize
ac_add_options --disable-freetype2
ac_add_options --disable-javaxpcom
ac_add_options --enable-default-toolkit=gtk2
ac_add_options --enable-svg
ac_add_options --enable-xft

Branche : XULRUNNER_1_8_0_4_RELEASE

Construction :

cd mozilla
export MOZ_ENABLE_MYSQL=1
export MOZ_MYSQL_INCLUDES=/usr/include/mysql/
export MOZ_MYSQL_LIBS=/usr/lib/mysql/
make -f client.mk build
make -C xpinstall/packager

Évidemment, MOZ_MYSQL_INCLUDES et MOZ_MYSQL_LIBS à adapter.

Code javascript :

var conn = Components.classes["@mozilla.org/sql/connection;1?type=mysql"]
.getService(Components.interfaces.mozISqlConnection);
// syntax: host, port, database name, username, password
conn.init("host", 3306, "mabase", "monuser", "monpasse");
try {
	display_result(conn.executeQuery("select * from matable limit 4"));
} catch(ex) {
	alert (e);
}

Je met le tarball à dispo ici : xulrunner_mysql-1.8.0.4.en-US.linux-i686.tar.gz

Merci encore à tous ceux qui me sont venus en aide.

# Re: compilation xulrunner cvs mais version stable

Envoyé par : chris

Date : 07/11/2006 18:42

Bonjour,

Après mise à jour de mysql (gentoo) passé en version 5.x, mon appli xulrunner ne se connectait plus à mysql.

J'ai donc recompilé xulrunner, et je met le tarball toujours à dispo ici : xulrunner_mysql5-1.8.0.4.en-US.linux-i686.tar.gz

# Re: compilation xulrunner cvs mais version stable

Envoyé par : chris

Date : 18/04/2007 05:51

Après passage en x86_64, recompilation dispo ici : xulrunner_mysql5-1.8.0.4.en-US.linux-x86_64.tar.gz

# Re: compilation xulrunner cvs mais version stable

Envoyé par : chris

Date : 18/04/2007 15:43

Version xulrunner (linux x86_64) à jour en 1.8.0.12pre incluant toujours l'extension sql pour connexion à un serveur mysql.

# Re: compilation xulrunner cvs mais version stable

Envoyé par : Mushu

Date : 17/08/2007 14:55

Est-ce qu'il est possible de trouver une version de Xulrunner téléchargeable directement avec MySQL d'intégré, car je n'ai pas la possibilité matérielle pour le compiler moi même (Visual Studio n'est pas donné) et ... j'avoue que je suis un peu perdu dans le tutorial pour le faire tout seul. (sachant que je n'arrive pas a faire fonctionner la version présente dans le tutorial SQL)

Merci par avance de votre aide.

Aller à la page :  1 2 3 4 5

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.