2017-03-01 11 views
1

私はcxfでスプリングブートアプリケーションを持っています。私はそれを実行すると、私は例外を取得:Cxf + Spring-boot(org.apache.cxf.bus.extension.ExtensionException)

[2017.03.01 17:37:35.839 MSK] [DEBUG] [o.a.c.c.s.ConfigurerImpl] [main] 
[Could not determine bean name for instance of class org.apache.cxf.wsdl11.WSDLManagerImpl.] 
[2017.03.01 17:37:35.841 MSK] [DEBUG] [o.a.c.r.DefaultResourceManager] 
[main] [resolving resource <org.apache.cxf.wsdl11.WSDLManagerImpl/bus> type <interface org.apache.cxf.Bus>] 
[2017.03.01 17:37:35.842 MSK] [DEBUG] [o.a.c.r.DefaultResourceManager] 
[main] [resolving resource <null> type <interface org.apache.cxf.Bus>] 
[2017.03.01 17:37:35.870 MSK] [DEBUG] [o.a.c.b.e.Extension] [main] [Could not load optional extension org.apache.cxf.binding.xml.wsdl11.XMLWSDLExtensionLoader] 

org.apache.cxf.bus.extension.ExtensionException: Could not create object of extension class org.apache.cxf.binding.xml.wsdl11.XMLWSDLExtensionLoader. 
    at org.apache.cxf.bus.extension.Extension.load(Extension.java:241) 
    at org.apache.cxf.bus.extension.ExtensionManagerImpl.loadAndRegister(ExtensionManagerImpl.java:213) 
    at org.apache.cxf.bus.extension.ExtensionManagerImpl.getBeansOfType(ExtensionManagerImpl.java:348) 
    at org.apache.cxf.bus.spring.SpringBeanLocator.getBeansOfType(SpringBeanLocator.java:153) 
    at org.apache.cxf.wsdl11.WSDLManagerImpl.setBus(WSDLManagerImpl.java:122) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:498) 
    at org.springsource.loaded.ri.ReflectiveInterceptor.jlrMethodInvoke(ReflectiveInterceptor.java:1426) 

は、いくつかの行と

Caused by: java.lang.NegativeArraySizeException: null 
    at org.objectweb.asm.Frame.a(Unknown Source) 
    at org.objectweb.asm.MethodWriter.visitMaxs(Unknown Source) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:498) 

CXFの依存関係と春ブート

<dependency> 
    <groupId>org.apache.cxf</groupId> 
    <artifactId>cxf-rt-databinding-jaxb</artifactId> 
    <version>${cxf.version}</version> 
    </dependency> 
    <dependency> 
    <groupId>org.apache.cxf</groupId> 
    <artifactId>cxf-rt-management</artifactId> 
    <version>${cxf.version}</version> 
    </dependency> 
    <dependency> 
    <groupId>org.apache.cxf</groupId> 
    <artifactId>cxf-spring-boot-starter-jaxws</artifactId> 
    <version>${cxf.version}</version> 
    </dependency> 
    <dependency> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-web-services</artifactId> 
</dependency> 

春ブートスキップ - 1.4.1 CXFを - 3.1.7

助けてください!どうすればバグを見つけることができますか?

+0

ここでもcxf設定を追加できますか?最初と最後の依存関係はオプションです –

+0

プロジェクトにいくつかのjarの競合があるように見えます。あなただけの ' org.apache.cxf CXF-RT-フロントエンド-JAXWSが必要 $ {} cxf.version org.apache.cxf CXF-RT- transports-http-hc $ {cxf.version} 'for cxf jaxws。 –

答えて

0

あなたのプロジェクトに複数のasmの依存関係があるようです。ルートプロジェクトからmvn dependency:treeを実行するか、プロジェクトビルド後に案件を調べることで見つけられます。 CXF 3.xで使用する場合は、依存関係org.ow2.asm:asm:jar:5.x.x以上が必要です。

希望に役立ちます。