2010-12-22 30 views
1

讓我立即說我對這個基於網絡的編程非常新穎。因此,我的情況如下:XSLT瀏覽器轉換;我錯過了什麼?

我有一個應用程序,我需要從一塊硬件中生成XML文件,只運行最基本的Web服務器應用程序。在硬件中沒有太多的「房地產」或額外的馬力,所以我正在尋求生成一個XML文件,其中包含與硬件配置相關的命令,參數和其他信息,然後發送它連接到已連接到Web服務器的Web瀏覽器。我希望能夠將XML文檔鏈接到硬件上託管的轉換。我相信這可以通過樣式表href完成。

<?xml-stylesheet type="text\xsl" href="C:\6850XML\XSL6850.xslt"?> 

現在很明顯,這是部署到硬件之前在工作站上調試:

當我用下面一行在XML文件的頂部,我有一個問題。當我在IE中打開XML文件時,我從字面上獲取XML文件。在Firefox中,我得到了XML的解析版本。當我在VS2K10中運行XSLT調試器時,我得到了我想要的網頁。這很可能是因爲您在開發環境中手動指定了要用於轉換的XML文件。我在做什麼樣式表href錯誤?該類型應該是別的嗎?

對不起,我肯定會是一個基本的問題,但我抓我已經無毛的頭在這裏。

+1

http://davidjarvis.ca/playlists/查看該幀的源我的桌面上進行測試。它是一個基於XML/XSL的網頁,使用瀏覽器的XSLT引擎呈現HTML。 – 2010-12-22 17:09:39

回答

1

它應該是type="text/xsl"並且href屬性應該是一個URL,而不是Windows文件路徑,所以請嘗試href="file:///C:/6850XML/XSL6850.xslt"。但是,由於安全限制,從Web上的資源鏈接到本地​​文件系統上的樣式表可能不適用於當今的瀏覽器。

+0

我可能剛剛解釋得不好。最終的計劃是建立一個連接到網絡服務器上運行的網絡服務器(通常坐在用戶的大廳裏的實驗室中),然後從同一塊硬件中獲取樣式表。 – 2010-12-22 18:03:52

1

網絡在* nix/BSD上運行,所以正斜槓總是按順序排列。修復你的'text/xsl'。

1

問題是瀏覽器沒有到達樣式表。這可能是因爲您的錯誤type="text\xsl"僞屬性和URI協議(未由瀏覽器處理,安全限制)。

解決方案:使用相對URI像

<?xml-stylesheet type="text/xsl" href="XSL6850.xslt"?> 

每次