我想使用CXF创建一个休息客户端。下面的代码抛出异常CXF rest客户端不能使用JAXRSServerFactoryBean
JAXRSServerFactoryBean sf = new JAXRSServerFactoryBean();
sf.setResourceClasses(Blogger.class);
sf.getInInterceptors().add(new LoggingInInterceptor());
sf.getOutInterceptors().add(new LoggingOutInterceptor());
sf.setAddress("http://myservice");
Map<Object, Object> mappings = new HashMap<Object, Object>();
mappings.put("xml", "application/xml");
mappings.put("json", "application/json");
sf.setExtensionMappings(mappings);
sf.create();
我得到的例外是
Exception in thread "main" java.lang.NoClassDefFoundError: javax/ws/rs/WebApplicationException
at com.test.LoggingTest.main(LoggingTest.java:26)
Caused by: java.lang.ClassNotFoundException: javax.ws.rs.WebApplicationException
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 1 more
感谢它的工作... – chatter
高兴你得到它的工作,这么好心( – Pyranja
我有org.apache.cxf.jaxrs.client.JAXRSClientFactoryBean.create()抛出异常;嵌套异常是java.lang.NoClassDefFoundError:javax/ws/rs/client/ClientException使用javax.ws.rs/javax.ws.rs-api的2.0.1版本(而不是2.0-m10的CXF 2.7.16版本)时强制使用2.0-m10修正了它。 – anre