我正在尝试使用Apache CXF与未知的Web服务进行通信.我跟随了Apache的Dynamic Client example.
JaxWsDynamicClientFactory factory = JaxWsDynamicClientFactory.newInstance();
Client client = factory.createClient(wsdlURL.toExternalForm(), SERVICE_NAME);
这工作正常,但现在我在调用createClient()时遇到此异常:
java.lang.IllegalStateException: Unable to create schema compiler
Caused by:
javax.xml.bind.JAXBException
- with linked exception:
[java.lang.ClassNotFoundException: com/sun/tools/internal/xjc/api/XJC]
这看起来类似于existing bug.我使用DOSGi singlebundle 1.2,其中包括cxf-minimal-2.2.9.jar;意思是错误应该在我正在使用的版本中修复. jaxb-api包含在我的Apache CXF发行版中,经检查后包含jaxb-xjc.
任何人都能为我提供一些关于我做错的见解吗?我发誓这曾经工作过.
解决方法:
如果在IDE的IDE内部使用JRE,则经常会出现“java.lang.ClassNotFoundException:com / sun / tools /”.
确保在IDE中使用JDK(例如eclipse)