你看本论坛的页面是html的吗?要想得到html代码,些个程序把吧!
给你个例子:
public String getParesdHtml(String xmlSource){
try{
SAXTransformerFactory stf = (SAXTransformerFactory) TransformerFactory
.newInstance();
XMLFilter filter = stf.newXMLFilter(new StreamSource(xslFile));
Transformer transformer = stf.newTransformer();
StringReader srcReader = new StringReader(xmlSource);
SAXSource src = new SAXSource(filter, new InputSource(srcReader));
StringWriter sw = new StringWriter();
StreamResult target = new StreamResult(sw);
transformer.transform(src, target);
return sw.toString();
}
catch (Exception e) {
e.printStackTrace();
return "";
}
}
给你个例子:
public String getParesdHtml(String xmlSource){
try{
SAXTransformerFactory stf = (SAXTransformerFactory) TransformerFactory
.newInstance();
XMLFilter filter = stf.newXMLFilter(new StreamSource(xslFile));
Transformer transformer = stf.newTransformer();
StringReader srcReader = new StringReader(xmlSource);
SAXSource src = new SAXSource(filter, new InputSource(srcReader));
StringWriter sw = new StringWriter();
StreamResult target = new StreamResult(sw);
transformer.transform(src, target);
return sw.toString();
}
catch (Exception e) {
e.printStackTrace();
return "";
}
}
解决方案 »
- 散分:初学 JAVA,请求高手指点?168分敬上。。。本贴分不够再来一贴补上。
- 如何安装和配置aspectj
- BeginTransaction引起的异常java.lang.NullPointerException,谢谢各位XD帮忙指点一下
- 初学struts:为什么validator框架不起作用?
- 一对多的影射
- 使用STRUTS,<html:text标签中显示数据为科学计数格式,我想用一般的格式,如:00000.00
- 高手一定要帮忙!谢谢
- 关于解决JSP网站稳定性的问题
- 问大家一个弱智的问题。
- 【Spring入门问题】通过注入对象是如何替换原来默认的配置的?
- 一个struts问题,我在struts界面中如何把表单中的一些text,button设为可读或可读可写的E-R模式啊
- struts应用技术
import javax.xml.transform.*;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource; /**
* 这个方法将xml通过样式单转换.
* @param xmlfile 将要被转换的xml文件路径
* @param xslfile XSL文件的文件路径
* @return String 转换后的字符串形式存放的html
*/
public static String ExecuteXSL(String xmlfile, String xslfile) {
try {
ByteArrayOutputStream byteRep = new ByteArrayOutputStream();
TransformerFactory transformerFactory =
TransformerFactory.newInstance();
StreamSource source = new StreamSource(xmlfile);
StreamResult result = new StreamResult(byteRep);
StreamSource style = new StreamSource(xslfile);
Transformer transformer =
transformerFactory.newTransformer(style);
transformer.setOutputProperty(javax.xml.transform.OutputKeys.ENCODING,
"GB2312"); //\u8BBE\u7F6E\u7F16\u7801
transformer.transform(source, result);
return byteRep.toString();
}
catch (Exception e) {
e.printStackTrace();
return null;
} }
javax.xml.transform.TransformerConfigurationException: javax.xml.transform.TransformerConfigurationException: javax.xml.transform.TransformerException: javax.xml.transform.TransformerException: stylesheet 要求属性: version at org.apache.xalan.processor.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:805) at untitled3.Untitled1.ExecuteXSL(Untitled1.java:86) at untitled3.Untitled1.main(Untitled1.java:42)Caused by: javax.xml.transform.TransformerConfigurationException: javax.xml.transform.TransformerException: javax.xml.transform.TransformerException: stylesheet 要求属性: version at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:984) at org.apache.xalan.processor.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:788) ... 2 moreCaused by: javax.xml.transform.TransformerException: javax.xml.transform.TransformerException: stylesheet 要求属性: version at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:980) ... 3 moreCaused by: javax.xml.transform.TransformerException: stylesheet 要求属性: version at org.apache.xalan.processor.ProcessorLRE.startElement(ProcessorLRE.java:209) at org.apache.xalan.processor.StylesheetHandler.startElement(StylesheetHandler.java:668) at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source) at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source) at org.apache.xerces.impl.XMLNSDocumentScannerImpl$NSContentDispatcher.scanRootElementHook(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source) at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:972) ... 3 more
你的xsl有问题,
命名空间必须是:<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
我的xsl如下:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<HTML>
<HEAD>
<TITLE><xsl:value-of select="document/title"/></TITLE>
</HEAD>
<BODY>
<H1><xsl:value-of select="document/title"/></H1>
<xsl:apply-templates select="document/section"/>
</BODY>
</HTML>
</xsl:template>
<xsl:template match="section">
<DIV>
<H2><xsl:value-of select="title"/></H2>
<xsl:apply-templates />
</DIV>
</xsl:template> <xsl:template match="p">
<P><xsl:apply-templates /></P>
</xsl:template> <xsl:template match="list">
<UL>
<xsl:for-each select="item">
<LI><xsl:apply-templates /></LI>
</xsl:for-each>
</UL>
</xsl:template> <xsl:template match="emph">
<I><xsl:apply-templates /></I>
</xsl:template> <xsl:template match="text()"><xsl:value-of /></xsl:template>
</xsl:stylesheet>
xml如下:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="pole.xsl"?>
<document>
<title>To the Pole and Back</title>
<section>
<title>The First Day</title>
<p>It was the <emph>best</emph> of days, it was the
<emph>worst</emph> of days.</p>
<list>
<item><emph>best</emph> in that the sun was out.</item>
<item><emph>worst</emph> in that it was 39 degrees below zero.</item>
</list>
<section>
<title>Lunch Menu</title>
<list>
<item>ice cream</item>
<item>popsicles</item>
</list>
</section> </section> <section>
<title>The Second Day</title>
<p>Ditto the first day.</p>
</section></document>
楼上的兄弟可以试试