知识大全 Jsp结合XML+XSLT将输出转换为Html格式
Posted 知
篇首语:百日连阴雨,总有一朝晴。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Jsp结合XML+XSLT将输出转换为Html格式相关的知识,希望对你有一定的参考价值。
Jsp结合XML+XSLT将输出转换为Html格式 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
我们知道 xml+XSLT就可以直接输出到支持XML的浏览器上 如IE 以上 但是 我们还要考虑到有不少浏览器不直接支持XML 在这种情况下 我们需要在服务器上进行转换成输出到浏览器 这种临时过渡办法恐怕要在一段时间内一直要使用 使用jsp 加上tablib标识库 我们可以完成这种转换
著名open source项目组jakarta apache 推出的系列标识库中 就有这个功能的tanglib:
按照jakarta配置方法 有点繁琐 需要修改或定义Web xml 本人经过摸索 使用下列相当简单的办法 就可以使Jsp能成功运行XSL这个标识库了
xsl标识库有三个关键包: xerces jar 可以在中得到 xalan jar 可以在中得到 xsl jar 从得到
将这三个包放置到Tomcat的mon/lib目录下 或者直接放入Classpath环境中
在JSP中调用标识库
原来Jakarta推荐方法是
<%@taglib uri="%>
这就需要在/WEB INF/web xml下定义一下指向 如
<taglib> <taglib uri></taglib uri> <taglib location>/WEB INF/xsl tld</taglib location> </taglib>
这种做法虽然很标准 但是 如果你的容器一直使用tomcat 就完全不必了
我们的做法是
<%@taglib uri="xsl jar" prefix="xsl" %>
我们以Jakarta的XSL taglib附带的Apply jsp为例 正好了解一下Jsp XML XSLT三者之间的关系
Apply jsp
<%@taglib uri="xsl jar" prefix="xsl" %> <> <head> <title>Employee List</title> </head> <body bgcolor="white">
<p>下面展示了Jsp的四种组合XML XSLT的方法 <p>下面使用apply方法 将已经存在的employees xml和employeeList xsl结合在一起
<xsl:apply xml="/xml/employees xml" xsl="/xml/employeeList xsl"/> <hr>
<p>下面是使用已经存在employeeList xsl 然后在Jsp中自己直接写入XML数据
<xsl:apply xsl="/xml/employeeList xsl"> <?xml version=" " encoding="ISO "?> <employees> <employee id=" "> <first name>John</first name> <last name>Doe</last name> <telephone> </telephone> </employee> <employee id=" "> <first name>Jane</first name> <last name>Smith</last name> <telephone> </telephone> </employee> <employee id=" "> <first name>Gee</first name> <last name>Taylor</last name> <telephone> </telephone> </employee> </employees> </xsl:apply> <hr>
<p>下面使使用include调用的办法 这样一个XSLT样式可以适应不同的XML文件
<xsl:apply xsl="/xml/employeeList xsl"> <xsl:include page="/xml/employees xml"/> </xsl:apply> <hr>
<p>下面是使用import方法 在page scope(类似scope="page")中导入XML文件</p>
<xsl:import id="data" page="/xml/employees xml"/> <xsl:apply nameXml="data" xsl="/xml/employeeList xsl"/>
</body>
在上面程序中 展示了四种Jsp组合XML XSLT的方法 基本可以满足我们的需要 注意上面的XML文件路径是"/xml/" 这是相对Tomcat容器的绝对路径
我们简单看一下employeeList xsl和employees xml内容
employeeList xsl类似中的CSS 主要是对XML中数据显示方式进行定义
<?xml version=" "?> <xsl:stylesheet version=" " xmlns:xsl="> <xsl:template match="employees"> <table border= width= %> <tr> <th>ID</th> <th>Employee Name</th> <th>Phone Number</th> </tr> <xsl:for each select="employee"> <tr> <td> <xsl:value of select="@id"/> </td> <td> <xsl:value of select="last name"/> <xsl:value of select="first name"/> </td> <td> <xsl:value of select="telephone"/> </td> </tr> </xsl:for each> </table> </xsl:template>
</xsl:stylesheet>
employees xml
<?xml version=" " encoding="ISO "?>
<employees> <employee id=" "> <first name>John</first name> <last name>Doe</last name> <telephone> </telephone> </employee>
<employee id=" "> <first name>Jane</first name> <last name>Smith</last name> <telephone> </telephone> </employee>
<employee id=" "> <first name>Gee</first name> <last name>Taylor</last name> <telephone> </telephone> </employee> </employees>
如果我们在employees xml顶部加入
<?xml:stylesheet type=text/xsl href="catalog xsl"?>
cha138/Article/program/Java/JSP/201311/20458相关参考
利用XSLT对XML进行缩进格式化处理 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在CSDN
知识大全 如何使用Javascript XSLT 处理XML文件
如何使用JavascriptXSLT处理XML文件 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
XML与HTML的结合用法二 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! XML的嵌套处理
将Asp.net页面输出为HTML 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! c#代码:
php将HTML转换成文本 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!cha138/A
ASP.NET2.0中XSLT的使用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在中对XML
代码 enum myInclude//定义枚举 &
解决JSP中拼装数据为XML出现的问题 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一应用背景
JSP与XML的交互有哪些 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 使用JavaServe
Struts,JSP和XML解析三个问题 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!struts