gpt4 book ai didi

java - 从应用程序中删除 crimson.jar 需要执行哪些步骤?

转载 作者:搜寻专家 更新时间:2023-11-01 03:54:01 25 4
gpt4 key购买 nike

由于 crimson jar 的存在,我面临着几个问题,大多数论坛发布的此类问题的解决方案都是摆脱它。

例如:

Caused by: java.lang.IllegalArgumentException: No attributes are implemented at org.apache.crimson.jaxp.DocumentBuilderFactoryImpl.setAttribute(DocumentBuilderFactoryImpl.java:93)

发布的解决方案是:

I would suggest using the current JAXP or the latest jdk which includes jaxp 1.4 if you're just trying to get started with xml. JAXP has replaced the Crimson parser since version 1.3. Refer to the 1.3 release notes https://jaxp.java.net/1.3/ReleaseNotes.html

但是当我删除这个 crimson.jar 时,我开始到处遇到问题,例如:

Jan 22, 2013 8:26:07 PM org.apache.tomcat.util.digester.Digester warning
WARNING: Parse Warning Error at line 1 column 0: URI was not reported to parser for entity [document]
org.xml.sax.SAXParseException: URI was not reported to parser for entity [document]
at gnu.xml.aelfred2.SAXDriver.warn(SAXDriver.java:934)
at gnu.xml.aelfred2.SAXDriver.startExternalEntity(SAXDriver.java:631)
at gnu.xml.aelfred2.XmlParser.pushURL(XmlParser.java:3358)
at gnu.xml.aelfred2.XmlParser.doParse(XmlParser.java:159)
at gnu.xml.aelfred2.SAXDriver.parse(SAXDriver.java:320)
at gnu.xml.aelfred2.XmlReader.parse(XmlReader.java:294)
at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1543)
at org.apache.catalina.startup.TldConfig.tldScanStream(TldConfig.java:553)
at org.apache.catalina.startup.TldConfig.tldScanWebXml(TldConfig.java:383)
at org.apache.catalina.startup.TldConfig.execute(TldConfig.java:299)
at org.apache.catalina.startup.TldConfig.lifecycleEvent(TldConfig.java:585)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:89)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5061)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:812)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:787)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:607)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:633)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:525)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1360)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1406)
at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:832)
at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:347)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:591)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:562)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:394)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:243)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:188)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:302)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Jan 22, 2013 8:26:07 PM org.apache.tomcat.util.digester.Digester warning
WARNING: Parse Warning Error at line 3 column 138: No base URI; hope URI is absolute: http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd
org.xml.sax.SAXParseException: No base URI; hope URI is absolute: http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd
at gnu.xml.aelfred2.SAXDriver.warn(SAXDriver.java:934)
at gnu.xml.aelfred2.XmlParser.readExternalIds(XmlParser.java:2399)
at gnu.xml.aelfred2.XmlParser.parseDoctypedecl(XmlParser.java:804)
at gnu.xml.aelfred2.XmlParser.parseProlog(XmlParser.java:522)
at gnu.xml.aelfred2.XmlParser.parseDocument(XmlParser.java:414)
at gnu.xml.aelfred2.XmlParser.doParse(XmlParser.java:167)
at gnu.xml.aelfred2.SAXDriver.parse(SAXDriver.java:320)
at gnu.xml.aelfred2.XmlReader.parse(XmlReader.java:294)
at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1543)
at org.apache.catalina.startup.TldConfig.tldScanStream(TldConfig.java:553)
at org.apache.catalina.startup.TldConfig.tldScanWebXml(TldConfig.java:383)
at org.apache.catalina.startup.TldConfig.execute(TldConfig.java:299)
at org.apache.catalina.startup.TldConfig.lifecycleEvent(TldConfig.java:585)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:89)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5061)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:812)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:787)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:607)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:633)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:525)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1360)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1406)
at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:832)
at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:347)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:591)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:562)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:394)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:243)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:188)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:302)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Jan 22, 2013 8:26:08 PM org.apache.tomcat.util.digester.Digester warning
WARNING: Parse Warning Error at line 3 column 140: No base URI; hope this SYSTEM id is absolute: http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd
org.xml.sax.SAXParseException: No base URI; hope this SYSTEM id is absolute: http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd
at gnu.xml.aelfred2.SAXDriver.warn(SAXDriver.java:934)
at gnu.xml.aelfred2.SAXDriver.absolutize(SAXDriver.java:606)
at gnu.xml.aelfred2.SAXDriver.resolveEntity(SAXDriver.java:585)
at gnu.xml.aelfred2.XmlParser.pushURL(XmlParser.java:3336)
at gnu.xml.aelfred2.XmlParser.parseDoctypedecl(XmlParser.java:845)
at gnu.xml.aelfred2.XmlParser.parseProlog(XmlParser.java:522)
at gnu.xml.aelfred2.XmlParser.parseDocument(XmlParser.java:414)
at gnu.xml.aelfred2.XmlParser.doParse(XmlParser.java:167)
at gnu.xml.aelfred2.SAXDriver.parse(SAXDriver.java:320)
at gnu.xml.aelfred2.XmlReader.parse(XmlReader.java:294)
at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1543)
at org.apache.catalina.startup.TldConfig.tldScanStream(TldConfig.java:553)
at org.apache.catalina.startup.TldConfig.tldScanWebXml(TldConfig.java:383)
at org.apache.catalina.startup.TldConfig.execute(TldConfig.java:299)
at org.apache.catalina.startup.TldConfig.lifecycleEvent(TldConfig.java:585)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:89)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5061)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:812)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:787)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:607)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:633)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:525)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1360)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1406)
at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:832)
at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:347)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:591)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:562)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:394)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:243)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:188)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:302)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Jan 22, 2013 8:26:08 PM org.apache.catalina.startup.XmlErrorHandler logFindings

一些人提到使用 jaxp 1.4 jar,其他人提到 xerces 是 crimson.jar 的替代品。我已经使用了两者,但我仍然收到那些警告异常。

所以我的问题是:从我的应用程序中删除/替换此 jar 和/或任何相关 jar 需要执行哪些步骤?

最佳答案

根据 http://xml.apache.org/crimson/网页

2010/08/06 - Apache Crimson 已停用。

并且 Crimson 代码库基于 Sun Project X 解析器。它也是目前在 Sun 产品中提供的解析器;然而, future 的计划是转移到一个名为 Xerces Java 2 的不同代码库。Xerces 2 目前正在开发中。 [创建项目页面后链接到 Xerces 2。]

所以 Xerces 是所需要的,但问题是 xerces 库应该放在哪里,如果它作为你的 war 的一部分放置它会产生上面提出的所有问题而不是它不应该是你的 war 库的一部分它应该是服务器共享库的一部分

对于 tomcat,您可以将它放在 lib 文件夹中,对于 Websphere,您可以将它放在任何地方,并将其添加到您的应用程序共享库类路径中。

关于java - 从应用程序中删除 crimson.jar 需要执行哪些步骤?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14464060/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com