Cliquez ici.
Accueil
 chercher             Plan du site             Info (English version) 
L'histoire de XML s'écrit en ce moment même. XMLfr vous aide à la suivre et à en dégager les tendances.Les listes de discussions XMLfr sont à votre disposition pour réagir sur nos articles ou simplement poser une question.Si vous ètes passionnée(e) par XML, pourquoi ne pas en faire votre métier ?XMLfr n'est heureusement pas le seul site où l'on parle de XML. Découvrez les autres grâce à XMLfr et à l'ODP.Les partenaires grâce auxquels XMLfr peut se développer.Pour tout savoir sur XMLfr.XMLfr sans fil, c'est possible !Pour ceux qui veulent vraiment en savoir plus sur XML.L'index du site.
 Commentaires et questions non techniques.Commentaires et questions techniques.

 
Cliquez ici.

From: Frédéric Laurent (xml@opikanoba.org)
Date: 03/06/2002 - 13:54


the_peuffeur@voila.fr wrote:
> Merci pour ta réponse Frédéric mais je ne suis pas sur de bien
> comprendre.
> Ce que j'aimerai faire c'est compiler les xsl au démarrage du serveur
> Tomcat grace à une servlet en autoload (donc une seule compilation
par > xsl) et actuellement ca semble fonctionner pour plusieurs
utilisateurs > accédant à une même servlet malgré ce que dit la doc.

le problème avec les threads provient de la reproduction du cas de
figure où ça ne marche pas ;-)

> Est-ce qu'il y a quelque chose que je n'ai pas bien compris ?
> Si dans cette utilisation il y a des problèmes, je ne vois qu'une
> solution : créer un pool de xsl compilées (je ne sais pas encore
> comment mais ce doit être faisable) ...
> Pour info, voici un bout de mon code :

> InputStream XSLis =
> XSLTransformerCollection.class.getResourceAsStream(uri);
> StreamSource xslSource = new StreamSource(XSLis);
> xslSource.setSystemId(XSLis.toString());
> TransformerFactory tFactory = TransformerFactory.newInstance();
> Templates myTemplates = tFactory.newTemplates(xslSource);
> Transformer retour = myTemplates.newTransformer();
> // stockage de la xsl compilee en attribut d'1 singleton
> lstTransformerStyle.put(cle,retour);

en fait, il ne faut pas garder des Transformer mais des Templates...
lors du traitement de la requête, il faut prendre le Templates stocké
puis obtenir une copie locale d'un Transformer qui ne posera pas
de problème vis-à-vis des threads, car si un autre utilisateur fait
une nouvelle requête, la feuille de style fournira une nouvelle
copie locale de Transformer...

pour info, il y a un bouquin O'Reilly qui cause de ça (Java&XSLT)
http://safari.oreilly.com/main.asp?bookname=javaxslt&snode=50

cordialement

-- 
Frédéric Laurent
http://www.opikanoba.org

-- Devenez redacteur <XML>fr et contribuez au developpement du xml francophone (http://xmlfr.org/infos/redacteurs/) !

Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).

Cette liste est a votre disposition pour discuter en francais de tout sujet technique lie a XML.

Pour resilier votre abonnement, envoyez un message contenant la commande "unsubscribe" a xml-tech-request@xmlfr.org (mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)



Archive générée par hypermail 2.1.3 le 28/06/2004 - 11:06 UTC

webmaster@xmlfr.org

 

xml tech

Discussions techniques au sujet de XML.

Cette liste est à votre disposition pour discuter en français de tout sujet technique lié à XML.



Devenez rédacteur <XML>fr et contribuez au développement du xml francophone !
Les documents publiés sur ce site le sont sous licence "Open Content"
Conception graphique
  l.henriot@online.fr  

Conception, réalisation et hébergement