我有一个用Struts编写的tomcat Web应用程序。它在Tomcat 7
和Java 7
的Linux中运行良好。当我在Tomcat8.5
和Java 8
下将其迁移到Windows 10时,
它抛出SAXNOtREcognizedException
错误,应用程序停止工作:
java.lang.SecurityException:org.xml.sax.SAXNotRecognizedException:Feature:http://apache.org/xml/features/allow-java-encodings
这些是应用程序WEB-INF / lib文件夹中包含的jar文件:
activation.jar
BCEL.jar
bsf.jar
collections.jar
commons-beanutils.jar
commons-collections.jar
commons-dbcp.jar
commons-digester.jar
commons-logging.jar
commons-pool.jar
commons-services.jar
commons-validator.jar
cos.jar
crimson.jar
DbConnectionBroker.jar
java_cup.jar
jaxp.jar
jdbc2_0-stdext.jar
jdom.jar
jdom-jdk11.jar
JLex.jar
log4j-1.2.7.jar
mailapi.jar
mysql_comp.jar
mysql.jar
ojdbc7.jar
regexp.jar
runtime.jar
smtp.jar
struts.jar
struts.jar--2
taglibs-request.jar
xalan.jar
xalansamples.jar
xalanservlet.jar
xercesImpl.jar
xerces.jar
xml-apis.jar
xsltc.jar
他们在Linux和Windows中都有相同的jar文件。
有人建议添加bc4j-mbeans.jar,但我找不到下载位置。我试图下载oc4j容器,但没有找到bc4j-mbeans.jar。
答案 0 :(得分:0)
启动Spring Boot 2 App时出现几乎相同的错误。
我排除了crimson.jar
,并且有效。
参考https://tomcat.apache.org/tomcat-9.0-doc/class-loader-howto.html#XML_Parsers_and_Java