java.lang.NoClassDefFoundError: javax.xml.bind.DatatypeConverterImpl初始化失败

如何解决java.lang.NoClassDefFoundError: javax.xml.bind.DatatypeConverterImpl初始化失败

我正在尝试从 sqljdbc4.jar 升级sqljdbc4.2.jar 作为 JDBC 驱动程序 在 WebSphere 8.5 上运行 Java 8 但是在启动我的应用程序时,我收到以下异常:

java.lang.NoClassDefFoundError: javax.xml.bind.DatatypeConverterImpl (initialization failure)
    at com.sun.faces.application.ActionListenerImpl.processAction(UnkNown Source)
    at org.primefaces.application.DialogActionListener.processAction(DialogActionListener.java:45)
    at javax.faces.component.UIViewAction.broadcast(UnkNown Source)
    at javax.faces.component.UIViewRoot.broadcastEvents(UnkNown Source)
    at javax.faces.component.UIViewRoot.processApplication(UnkNown Source)
    at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(UnkNown Source)
    at com.sun.faces.lifecycle.Phase.doPhase(UnkNown Source)
    at com.sun.faces.lifecycle.LifecycleImpl.execute(UnkNown Source)
    at javax.faces.webapp.FacesServlet.service(UnkNown Source)
    at com.ibm.ws.cache.servlet.ServletWrapper.serviceProxied(ServletWrapper.java:307)
    at com.ibm.ws.cache.servlet.CacheHook.handleFragment(CacheHook.java:562)
    at com.ibm.ws.cache.servlet.CacheHook.handleServlet(CacheHook.java:255)
    at com.ibm.ws.cache.servlet.ServletWrapper.service(ServletWrapper.java:259)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1233)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:782)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:481)
    at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:136)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:97)
    at org.primefaces.webapp.filter.FileUploadFilter.doFilter(FileUploadFilter.java:100)
    at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
    at com.filenet.ae.toolkit.server.servlet.filter.PostprocessorFilter.doFilter(PostprocessorFilter.java:38)
    at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
    at com.filenet.ae.toolkit.server.servlet.filter.ContainerBasedFilter.doFilter(ContainerBasedFilter.java:218)
    at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
    at com.filenet.ae.toolkit.server.servlet.filter.PreprocessorFilter.doFilter(PreprocessorFilter.java:91)
    at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
    at com.filenet.ae.toolkit.server.servlet.filter.SecurityPluginFilter.doFilter(SecurityPluginFilter.java:202)
    at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
    at com.filenet.ae.toolkit.server.servlet.filter.ThreadLocalCleanupFilter.doFilter(ThreadLocalCleanupFilter.java:50)
    at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
    at gov.mci.web.filter.CoordinatorSecurityFilter.doFilter(CoordinatorSecurityFilter.java:207)
    at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
    at com.dataserve.common.CompatibleFilter.doFilter(CompatibleFilter.java:53)
    at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
    at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:967)
    at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1107)
    at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:4028)
    at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:304)
    at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:1016)
    at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1817)
    at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:200)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handlediscrimination(HttpInboundLink.java:463)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:530)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:316)
    at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:88)
    at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)
    at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
    at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
    at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
    at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
    at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
    at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1892)
Caused by: javax.faces.el.EvaluationException: java.lang.NoClassDefFoundError: javax.xml.bind.DatatypeConverterImpl (initialization failure)
    at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(UnkNown Source)
    ... 62 more
Caused by: java.lang.NoClassDefFoundError: javax.xml.bind.DatatypeConverterImpl (initialization failure)
    at java.lang.J9VMInternals.initializationAlreadyFailed(J9VMInternals.java:91)
    at javax.xml.bind.DatatypeConverter.initConverter(DatatypeConverter.java:155)
    at javax.xml.bind.DatatypeConverter.parseHexBinary(DatatypeConverter.java:371)
    at com.microsoft.sqlserver.jdbc.sqlServerConnection.sendlogon(sqlServerConnection.java:2874)
    at com.microsoft.sqlserver.jdbc.sqlServerConnection.logon(sqlServerConnection.java:2361)
    at com.microsoft.sqlserver.jdbc.sqlServerConnection.access$100(sqlServerConnection.java:44)
    at com.microsoft.sqlserver.jdbc.sqlServerConnection$logonCommand.doExecute(sqlServerConnection.java:2347)
    at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:6276)
    at com.microsoft.sqlserver.jdbc.sqlServerConnection.executeCommand(sqlServerConnection.java:1794)
    at com.microsoft.sqlserver.jdbc.sqlServerConnection.connectHelper(sqlServerConnection.java:1405)
    at com.microsoft.sqlserver.jdbc.sqlServerConnection.login(sqlServerConnection.java:1069)
    at com.microsoft.sqlserver.jdbc.sqlServerConnection.connectInternal(sqlServerConnection.java:905)
    at com.microsoft.sqlserver.jdbc.sqlServerConnection.connect(sqlServerConnection.java:452)
    at com.microsoft.sqlserver.jdbc.sqlServerDataSource.getConnectionInternal(sqlServerDataSource.java:637)
    at com.microsoft.sqlserver.jdbc.sqlServerPooledConnection.createNewConnection(sqlServerPooledConnection.java:60)
    at com.microsoft.sqlserver.jdbc.sqlServerPooledConnection.<init>(sqlServerPooledConnection.java:42)
    at com.microsoft.sqlserver.jdbc.sqlServerConnectionPoolDataSource.getPooledConnection(sqlServerConnectionPoolDataSource.java:34)
    at com.ibm.ws.rsadapter.spi.InternalGenericDataStoreHelper$1.run(InternalGenericDataStoreHelper.java:1365)
    at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118)
    at com.ibm.ws.rsadapter.spi.InternalGenericDataStoreHelper.getPooledConnection(InternalGenericDataStoreHelper.java:1384)
    at com.ibm.ws.rsadapter.spi.WSRdbDataSource.getPooledConnection(WSRdbDataSource.java:2154)
    at com.ibm.ws.rsadapter.spi.WSManagedConnectionFactoryImpl.getConnection(WSManagedConnectionFactoryImpl.java:1802)
    at com.ibm.ws.rsadapter.spi.WSManagedConnectionFactoryImpl.createManagedConnection(WSManagedConnectionFactoryImpl.java:1572)
    at com.ibm.ws.rsadapter.spi.WSManagedConnectionFactoryImpl.createManagedConnection(WSManagedConnectionFactoryImpl.java:1128)
    at com.ibm.ejs.j2c.FreePool.createManagedConnectionWithMCWrapper(FreePool.java:2167)
    at com.ibm.ejs.j2c.FreePool.createOrWaitForConnection(FreePool.java:1837)
    at com.ibm.ejs.j2c.PoolManager.reserve(PoolManager.java:3805)
    at com.ibm.ejs.j2c.PoolManager.reserve(PoolManager.java:3081)
    at com.ibm.ejs.j2c.ConnectionManager.allocateMCWrapper(ConnectionManager.java:1548)
    at com.ibm.ejs.j2c.ConnectionManager.allocateConnection(ConnectionManager.java:1031)
    at com.ibm.ws.rsadapter.jdbc.WSJdbcDataSource.getConnection(WSJdbcDataSource.java:644)
    at com.ibm.ws.rsadapter.jdbc.WSJdbcDataSource.getConnection(WSJdbcDataSource.java:920)
    at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:139)
    at org.hibernate.engine.jdbc.internal.JdbcServicesImpl$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcServicesImpl.java:279)
    at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:124)
    at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:111)
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:234)
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:206)
    at org.hibernate.cfg.Configuration.buildTypeRegistrations(Configuration.java:1887)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1845)
    at gov.mci.efada.entities.EntityHome.configureHibernate(EntityHome.java:54)
    at gov.mci.efada.entities.EntityHome.<init>(EntityHome.java:41)
    at gov.mci.efada.entities.EntityHome.getInstance(EntityHome.java:30)
    at gov.mci.jsf.beans.efada.Tracking.inBoxQueue(Tracking.java:170)
    at gov.mci.jsf.beans.efada.Tracking.onload(Tracking.java:76)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
    at java.lang.reflect.Method.invoke(Method.java:508)
    at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:335)
    at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:348)
    at org.jboss.el.parser.AstPropertySuffix.invoke(AstPropertySuffix.java:58)
    at org.jboss.el.parser.AstValue.invoke(AstValue.java:96)
    at org.jboss.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
    at com.sun.faces.facelets.el.TagMethodExpression.invoke(UnkNown Source)
    ... 63 more
Caused by: java.lang.Error: javax.xml.datatype.DatatypeConfigurationException: Provider javax.xml.datatype.DatatypeFactory Could not be instantiated: java.util.ServiceConfigurationError: javax.xml.datatype.DatatypeFactory: Provider org.apache.xerces.jaxp.datatype.DatatypeFactoryImpl not a subtype
    at javax.xml.bind.DatatypeConverterImpl.<clinit>(DatatypeConverterImpl.java:907)
    at javax.xml.bind.DatatypeConverter.initConverter(DatatypeConverter.java:155)
    at javax.xml.bind.DatatypeConverter.parseBase64Binary(DatatypeConverter.java:356)
    at com.sun.faces.renderkit.ByteArrayguard.setupKeyAndMac(UnkNown Source)
    at com.sun.faces.renderkit.ByteArrayguard.<init>(UnkNown Source)
    at com.sun.faces.renderkit.ClientSideStateHelper.init(UnkNown Source)
    at com.sun.faces.renderkit.ClientSideStateHelper.<init>(UnkNown Source)
    at com.sun.faces.renderkit.ResponseStateManagerImpl.<init>(UnkNown Source)
    at com.sun.faces.renderkit.RenderKitImpl.<init>(UnkNown Source)
    at com.sun.faces.renderkit.RenderKitFactoryImpl.<init>(UnkNown Source)
    at java.lang.J9VMInternals.newInstanceImpl(Native Method)
    at java.lang.class.newInstance(Class.java:1899)
    at javax.faces.FactoryFinderInstance.getImplgivenPrevIoUsImpl(UnkNown Source)
    at javax.faces.FactoryFinderInstance.getImplementationInstance(UnkNown Source)
    at javax.faces.FactoryFinderInstance.getFactory(UnkNown Source)
    at javax.faces.FactoryFinder.getFactory(UnkNown Source)
    at com.sun.faces.config.processor.FactoryConfigProcessor.verifyFactoriesExist(UnkNown Source)
    at com.sun.faces.config.processor.FactoryConfigProcessor.process(UnkNown Source)
    at com.sun.faces.config.ConfigManager.initialize(UnkNown Source)
    at com.sun.faces.config.ConfigureListener.contextinitialized(UnkNown Source)
    at com.ibm.ws.webcontainer.webapp.WebApp.notifyServletContextCreated(WebApp.java:1734)
    at com.ibm.ws.webcontainer.webapp.WebAppImpl.initialize(WebAppImpl.java:415)
    at com.ibm.ws.webcontainer.webapp.WebGroupImpl.addWebApplication(WebGroupImpl.java:88)
    at com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostImpl.java:171)
    at com.ibm.ws.webcontainer.WSWebContainer.addWebApp(WSWebContainer.java:904)
    at com.ibm.ws.webcontainer.WSWebContainer.addWebApplication(WSWebContainer.java:789)
    at com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContainerImpl.java:427)
    at com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContainerImpl.java:719)
    at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1211)
    at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedobjectStart(DeployedApplicationImpl.java:1390)
    at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:639)
    at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:979)
    at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:795)
    at com.ibm.ws.runtime.component.ApplicationMgrImpl$5.run(ApplicationMgrImpl.java:2279)
    at com.ibm.ws.security.auth.ContextManagerImpl.runAs(ContextManagerImpl.java:5554)
    at com.ibm.ws.security.auth.ContextManagerImpl.runAsSystem(ContextManagerImpl.java:5680)
    at com.ibm.ws.security.core.SecurityContext.runAsSystem(SecurityContext.java:255)
    at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:2284)
    at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:436)
    at com.ibm.ws.runtime.component.CompositionUnitImpl.start(CompositionUnitImpl.java:123)
    at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:379)
    at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.access$500(CompositionUnitMgrImpl.java:127)
    at com.ibm.ws.runtime.component.CompositionUnitMgrImpl$CUInitializer.run(CompositionUnitMgrImpl.java:985)
    at com.ibm.wsspi.runtime.component.WsComponentImpl$_AsynchInitializer.run(WsComponentImpl.java:524)
    ... 1 more
Caused by: javax.xml.datatype.DatatypeConfigurationException: Provider javax.xml.datatype.DatatypeFactory Could not be instantiated: java.util.ServiceConfigurationError: javax.xml.datatype.DatatypeFactory: Provider org.apache.xerces.jaxp.datatype.DatatypeFactoryImpl not a subtype
    at javax.xml.datatype.DatatypeFactory.newInstance(UnkNown Source)
    at javax.xml.bind.DatatypeConverterImpl.<clinit>(DatatypeConverterImpl.java:905)
    ... 44 more

我尝试添加 jaxb-api-2.2.11.jarjaxb-impl-2.2.11.jar 我仍然遇到同样的错误

UPDATE:在 sqljdbc4.jar 上运行时,我不必添加 jaxb-apijaxb-impl 并且我的应用程序运行良好,这个问题只在我尝试使用 sqljdbc4.2.jar 时出现。

解决方法

假设这是 SQL Server JDBC 驱动程序,请尝试使用更新的版本(例如,当前最新版本为 9.2.1),看看是否能解决问题。

或者,鉴于您的应用服务器已经提供了 JAXB,您也可以尝试通过驱动程序再次排除 JAXB 依赖项。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?