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

Reivax962 Messages postés 3742 Statut Membre -  
Reivax962 Messages postés 3742 Statut Membre -
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 3742 Statut Membre 1 011
 
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 909 Statut Membre 507
 
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 3742 Statut Membre 1 011
 
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 3742 Statut Membre 1 011
 
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