ServiceConstructionException: Failed to create service Cannot create a secure XMLInputFactory

org.apache.cxf.service.factory.ServiceConstructionException: Failed to create service.
at org.apache.cxf.wsdl11.WSDLServiceFactory.<init>(WSDLServiceFactory.java:76)
at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:296)
at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:241)
at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:234)
at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:189)


         ……

at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41)
at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:644)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:415)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:355)
Caused by: javax.wsdl.WSDLException: WSDLException: faultCode=PARSER_ERROR: java.lang.RuntimeException: Cannot create a secure XMLInputFactory
at org.apache.cxf.wsdl11.WSDLManagerImpl.loadDefinition(WSDLManagerImpl.java:228)
at org.apache.cxf.wsdl11.WSDLManagerImpl.getDefinition(WSDLManagerImpl.java:163)
at org.apache.cxf.wsdl11.WSDLServiceFactory.<init>(WSDLServiceFactory.java:74)
... 326 more
Caused by: java.lang.RuntimeException: Cannot create a secure XMLInputFactory
at org.apache.cxf.staxutils.StaxUtils.createXMLInputFactory(StaxUtils.java:323)
at org.apache.cxf.staxutils.StaxUtils.getXMLInputFactory(StaxUtils.java:273)
at org.apache.cxf.staxutils.StaxUtils.createXMLStreamReader(StaxUtils.java:1782)
at org.apache.cxf.staxutils.StaxUtils.createXMLStreamReader(StaxUtils.java:1681)
at org.apache.cxf.wsdl11.WSDLManagerImpl.loadDefinition(WSDLManagerImpl.java:215)
... 328 more

Tomcat部署没有问题,weblogic部署后调用方法,报如上问题
woodstox-core-asl-4.4.1.jar  与 wstx-asl-3.2.4 冲突了. 删除wstx-asl-3.2.4j.ar

最终原因是因为下面影响的,通过IDEA找到org.apache.cxf.staxutils.StaxUtils类
Caused by: java.lang.RuntimeException: Cannot create a secure XMLInputFactory

at org.apache.cxf.staxutils.StaxUtils.createXMLInputFactory(StaxUtils.java:323)

  if (factory == null || !setRestrictionProperties(factory)) {
            try {
                factory = createWoodstoxFactory();
            } catch (Throwable var3) {
                ;
            }
            if (!setRestrictionProperties(factory)) {
                if (!allowInsecureParser) {
                    throw new RuntimeException("Cannot create a secure XMLInputFactory");
                }
                LOG.log(Level.WARNING, "INSECURE_PARSER_DETECTED", factory.getClass().getName());
            }
        }

然后定位到setRestrictionProperties(factory)

private static boolean setRestrictionProperties(XMLInputFactory factory) {
        return setProperty((XMLInputFactory)factory, "com.ctc.wstx.maxAttributesPerElement", maxAttributeCount) && setProperty((XMLInputFactory)factory, "com.ctc.wstx.maxAttributeSize", maxAttributeSize) && setProperty((XMLInputFactory)factory, "com.ctc.wstx.maxChildrenPerElement", innerElementCountThreshold) && setProperty((XMLInputFactory)factory, "com.ctc.wstx.maxElementCount", maxElementCount) && setProperty((XMLInputFactory)factory, "com.ctc.wstx.maxElementDepth", innerElementLevelThreshold) && setProperty((XMLInputFactory)factory, "com.ctc.wstx.maxCharacters", maxXMLCharacters) && setProperty((XMLInputFactory)factory, "com.ctc.wstx.maxTextLength", maxTextLength);
    }

1. IDEA 用Ctrl+N 查找类com.ctc.wstx发现 woodstox-core-asl-4.4.1.jar  与 wstx-asl-3.2.4 都存在这个路径,且包名和类名都相同

2. 通过createWoodstoxFactory方法往下找,找到尽头发现WstxInputFactory类,Idea 查找类发现 woodstox-core-asl-4.4.1.jar  与 wstx-asl-3.2.4.jar都存在这个类。
3. 综上, woodstox-core-asl-4.4.1.jar  与 wstx-asl-3.2.4.jar存在冲突。尝试之后,发现排除wstx-asl-3.2.4.jar依赖后,项目正常运行。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
错误信息"failed to create task for container: failed to create shim task"表示Docker在创建容器任务时遇到了问题。这可能是由于多种原因引起的,比如Docker版本不兼容、缺少依赖、配置错误等。 要解决此问题,可以尝试以下几个方法: 1. 首先,确保你的Docker版本与你想要加载的镜像兼容。可以运行命令`docker version`来检查Docker的版本信息。如果发现版本不一致,可以尝试升级或降级Docker。 2. 检查系统是否安装了正确的依赖项。Docker需要依赖一些软件包和库,确保这些依赖已经正确安装。你可以查看Docker的官方文档以获取详细的依赖项列表。 3. 检查Docker的配置是否正确。确保Docker的配置文件中没有任何错误或遗漏的信息。可以通过编辑Docker的配置文件来进行检查。 4. 如果以上方法都无效,可以尝试重新安装Docker。首先卸载旧版本的Docker,然后重新安装最新版本的Docker。确保在重新安装之前备份好重要的数据。 总之,解决"failed to create task for container: failed to create shim task"的问题需要综合考虑多个因素,包括Docker版本、依赖项和配置等。根据具体情况,选择合适的方法来解决问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [docker: Error response from daemon: failed to create task for container: failed to create shim task:](https://blog.csdn.net/guo_zhen_qian/article/details/132277608)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [docker安装完成启动不了(报错:Failed to start Docker Application Container Engine.)](https://download.csdn.net/download/weixin_38558655/14052226)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值