XML+XSLT 可直接輸出至支援 XML 的瀏覽器(IE 5.0+),但為相容不支援 XML 的舊版瀏覽器,需在伺服器端轉換為 HTML。本文介紹使用 Jakarta Taglib 實現 JSP 中的 XSLT 轉換。
xerces.jar(XML 解析器) - xml.apache.orgxalan.jar(XSLT 處理器) - xml.apache.orgxsl.jar(Taglib 實作) - jakarta.apache.orgcommon/lib 目錄或加入 classpath<%@taglib uri="xsl.jar" prefix="xsl" %>(無需修改 web.xml)以 Jakarta 附帶的 Apply.jsp 為例:
<%@taglib uri="xsl.jar" prefix="xsl" %>
<html><body>
<p>方法一:apply 現有 XML 與 XSL 檔案</p>
<xsl:apply xml="/xml/employees.xml" xsl="/xml/employeeList.xsl"/>
<hr>
<p>方法二:使用現有 XSL,JSP 內嵌 XML 資料</p>
<xsl:apply xsl="/xml/employeeList.xsl">
<?xml version="1.0" encoding="ISO-8859-1"?>
<employees>...</employees>
</xsl:apply>
<hr>
<p>方法三:include 引入 XML 檔案</p>
<xsl:apply xsl="/xml/employeeList.xsl">
<xsl:include page="/xml/employees.xml"/>
</xsl:apply>
<hr>
<p>方法四:import 導入 XML 至 page scope</p>
<xsl:import id="data" page="/xml/employees.xml"/>
<xsl:apply nameXml="data" xsl="/xml/employeeList.xsl"/>
</body></html>
路徑 /xml/ 為相對 Tomcat 容器的絕對路徑。四種方式涵蓋靜態檔案結合、動態內嵌資料、模組化引入、範圍變數傳遞,滿足大多數伺服端 XSLT 轉換需求。