首页 > 编程语言 > 详细

Caused by: java.lang.ClassNotFoundException: com/sun/tools/internal/xjc/api/XJC

时间:2016-03-01 02:07:30      阅读:2281      评论:0      收藏:0      [点我收藏+]

Caused by: java.lang.ClassNotFoundException: com/sun/tools/internal/xjc/api/XJC

缺少com/sun/tools/internal/xjc/api/XJC

?

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

蕃薯耀 2016年2月29日 14:41:19 星期一

http://fanshuyao.iteye.com/

?

?

Exception in thread "main" java.lang.IllegalStateException: Unable to create schema compiler
	at org.apache.cxf.common.jaxb.JAXBUtils.createSchemaCompilerWithDefaultAllocator(JAXBUtils.java:663)
	at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createSchemaCompiler(DynamicClientFactory.java:422)
	at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:306)
	at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:240)
	at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:233)
	at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:188)
	at com.lqy.spring.cxf_client.Main.main(Main.java:12)
Caused by: javax.xml.bind.JAXBException
 - with linked exception:
[java.lang.ClassNotFoundException: com/sun/tools/internal/xjc/api/XJC]
	at org.apache.cxf.common.jaxb.JAXBUtils.createSchemaCompiler(JAXBUtils.java:648)
	at org.apache.cxf.common.jaxb.JAXBUtils.createSchemaCompilerWithDefaultAllocator(JAXBUtils.java:655)
	... 6 more
Caused by: java.lang.ClassNotFoundException: com/sun/tools/internal/xjc/api/XJC
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Unknown Source)
	at org.apache.cxf.common.jaxb.JAXBUtils.createSchemaCompiler(JAXBUtils.java:641)
	... 7 more

?

一、问题描述:

在CXF调用接口的代码时,跳出这样的错误:

Caused by: java.lang.ClassNotFoundException: com/sun/tools/internal/xjc/api/XJC

?

JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();
        org.apache.cxf.endpoint.Client client = dcf.createClient("http://localhost:8080/cxf/ws/getUserName?wsdl");
        //sayHello 为接口中定义的方法名称   张三为传递的参数   返回一个Object数组
        //Object[] objects=client.invoke("getUserName", new Object[]{}); 
        Object[] objects=client.invoke("getUserNameByString", "张三"); 
        //输出调用结果
        System.out.println(objects[0].toString()); 

?

二、解决

但网上都说在jaxb-xjc这个Jar包里,其实是不对的,因为引用的是Jdk lib下的tools.jar

D:\Java\jdk1.6.0_45\lib\tools.jar,缺少的是这个包,把这个包引用就正常了。

?

?三、注意

加了tools.jar,再添加jaxb-xjc也会报错,所以不要再添加jaxb-xjc.jar

<dependency>

<groupId>com.sun.xml.bind</groupId>

<artifactId>jaxb-xjc</artifactId>

<version>2.2.11</version>

</dependency>

?

Exception in thread "main" java.lang.IllegalStateException: Unable to write generated Java files for schemas: null
	at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:354)
	at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:240)
	at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:233)
	at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:188)
	at com.lqy.spring.cxf_client.Main.main(Main.java:12)
Caused by: java.lang.reflect.UndeclaredThrowableException
	at com.sun.proxy.$Proxy27.build(Unknown Source)
	at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:352)
	... 4 more
Caused by: java.lang.NoSuchMethodException: com.sun.codemodel.internal.JCodeModel.build(java.lang.Object)
	at java.lang.Class.getMethod(Unknown Source)
	at org.apache.cxf.common.util.ReflectionInvokationHandler.invoke(ReflectionInvokationHandler.java:85)
	... 6 more

?

?

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

蕃薯耀 2016年2月29日 14:41:19 星期一

http://fanshuyao.iteye.com/

Caused by: java.lang.ClassNotFoundException: com/sun/tools/internal/xjc/api/XJC

原文:http://fanshuyao.iteye.com/blog/2279465

(1)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!