公司产品中有工作流转公文收发的流程,其中需要对xml进行解析.原来一直在jdk1.4上使用,没发生什么问题.但是在jdk1.5上使用,需要更换apache中的解析器xalan.jar
在jdk1.5+tomcat5.0.28上,需要把WEB-INF/lib/xalan.jar包替换成高版本的包xalan-2.7.0.jar即可.
下面摘自网络的文章:
页面出现错误
javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found
javax.xml.transform.TransformerFactory.newInstance(Unknown Source)
uk.ltd.getahead.dwr.convert.DOMConverter.(DOMConverter.java:157)
这是一个 XML 解析器的问题,我们能直接能理解的就是 TransformerFactoryImpl 找不到,那么这个类在哪个包里呢? xalan,就去 apache 网上下载到 xalan.jar 包扔到应用的 WEB-INF/lib 目录中,重启 Tomcat 就能OK 了。
上面是第一种解决办法。问题是解决了,但是根由何在?难道就不能用别的 XML 解析器呢,难道 JDK 和 Tomcat 就没有为我们预备好对于 dwr 可用的 XML 解析器吗?先说个背景
·JDK1.3 没有 XML 解析器,所有要自己配上 xercesImpl.jar 和 xml-apis.jar
·JDK 1.4.0 和 JDK 1.4.1 虽然具有了 XML 解析器,但是有些 Bug,所有还是得把 xercesImpl.jar 放到 Tomcat/common/endorsed 目录中覆盖掉默认的解析器
·JDK 1.4.2 及后来版本的 XML 解析器可以工作的很好
来自:http://www.loohost.com/thread-1851-1-1.html
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12778571/viewspace-217973/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/12778571/viewspace-217973/