XML et Firefox : récupérer une fiche XSLT

Fermé
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 27 oct. 2006 à 19:01
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 30 oct. 2006 à 14:48
Bonjour,

J'ai un problème sur lequel je commence à m'arracher les cheveux...
D'un côté, j'ai un fichier XML dont les en-têtes sont
<?xml version="1.0" encoding="iso-8859-1" ?>
<?xml-stylesheet href="ficheclient.xslt" type="text/xsl" ?>
Dans le même répertoire, j'ai, bien sûr, mon fichier xslt, dont les en-têtes sont
<?xml version="1.0" encoding="iso-8859-1" standalone="yes" ?>
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
Jusque là, rien d'étonnant.
Mais là où ça commence à me ***, c'est dans le comportement de FireFox...
Je m'explique.
Si j'affiche le fichier XML, en local (dans l'explorateur windows, je double-clique sur le fichier), sous IE comme sous FF, aucun problème, mon fichier XML est lu, le xslt aussi, et j'ai le bel affichage que je voulais.

Là où ça se corse, c'est si j'y accède via mon serveur web...
http://localhost/test.xml : tout va bien sous IE. Mais alors, sous firefox, impossible d'aller lui faire chercher le fichier xslt ! Il me laisse une page blanche... Le code source contient bien toutes les données xml, mais le code source après transformation vaut
<html><head></head><body>< tout le code xml ici ></body></html>
, ce qui ne correspond absolument pas à ma feuille de style. D'ailleurs, il me met exactement le même résultat si je lui donne une fausse feuille de style (uri inexistante).
Par contre, si je tape l'adresse de la feuille xslt directement dans la barre d'adresse, il me la télécharge sans problème.

Bref, une différence de comportement entre un accès local ou à distance...
Est-ce qu'il y a un paramètre de sécurité de FireFox a changer ? Est-ce que je dois appeler ma fiche de façon différente ? Toute solution me ferais vraiment très plaisir :)

Merci d'avance,

Xavier
A voir également:

3 réponses

Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
27 oct. 2006 à 19:08
Ah !
Une petite idée de plus : jusque là, je tentais ça sous IIS.
Je viens de tenter sous Apache... IE fonctionne encore sans problème. Par contre, cette fois, Firefox me donne un vrai message d'erreur :
 Erreur lors du chargement de la feuille de style : Une feuille de style XSLT ne possède pas de type Mime XML : http://127.0.0.1:4234/ficheclient.xslt 
Donc, au moins, il sait qu'il faut aller la chercher. Mais ça ne m'avance pas vraiment : si j'enlève le « type='text/xsl' », il recommence à me faire une page blanche, et IE de son côté ne veut plus m'afficher que le source XML... Bref, pas une solution !

Allez, j'y retourne...

Xavier
0
crabs Messages postés 908 Date d'inscription lundi 18 avril 2005 Statut Membre Dernière intervention 3 août 2008 506
28 oct. 2006 à 14:45
Salut,
Essaies de renommer ta feuille xslt avec l'extension xsl.
(j'ai reproduits ton problème avec apache sous linux avec .xslt mais pas avec .xsl)
A+, crabs
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
30 oct. 2006 à 10:04
Merci pour le conseil, en effet, ça marche... sous Apache !!!!
Mais toujours pas sous IIS :'(
Et là, je sens que je vais craquer :-/

En tous cas, merci beaucoup, ça me fournit déjà une piste supplémentaire...

Allez, j'y retourne !

Xavier
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
30 oct. 2006 à 14:48
C'est bon, ça marche !
Merci Crabs :)
J'avais en fait deux problèmes qui se superposaient...
Le premier, comme l'a bien vu Crabs, c'était dans le nom du fichier. .xsl, et non pas .xslt.

Ensuite, un deuxième problème, c'est que le nom de mon fichier n'était pas en .xml, mais en .aspx puisque mon code xml est généré à la volée. Et là où IE détectait automatiquement le contenu XML, pour Firefox, il faut le déclarer explicitement dans l'en-tête (donc, en ASP .net pour ceux qui auraient le même problème, en ajoutant l'attribut
 contentType="text/xml"
dans la déclaration asp <%@ Page %>

Et voilà, comme ça, tout roule pour IE et Firefox ! Merci encore :)

Xavier
0