【发布时间】:2012-07-11 14:33:33
【问题描述】:
我想使用使用 CXF 开发的 REST 客户端和 TomEE/TomEE+ 1.0,但 JAXB JSON 编组/解组(使用 Jackson 库)有一点问题。 我尝试了 Jersey Client 1.1.13 和 CXF WebClient(Tomee+ 1.0 中包含的版本),但是,我在部署时遇到了同样的错误:
org.apache.openejb.OpenEJBException:没有提供程序可用于“localhost/mywebapp.Comp”的“javax.ws.rs.ext.Providers”类型的资源引用“null”
我也尝试将“jackson-jaxrs-json-provieder-2.0.4.jar”jar 复制到 TomEE lib 目录,但错误是一样的。 我还尝试将系统属性“openejb.cxf.jax-rs.providers”设置为“com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider,com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider”,但没有任何改变。
下面是我使用 CXF 进行 REST 调用的代码示例:
final List<Object> providers = new ArrayList<Object>();
providers.add(new JacksonJaxbJsonProvider());
WebClient wc = WebClient.create(url, providers);
无论如何,这段代码从未执行过,因为错误发生在部署时。 我的 webapp(使用 Jersey 客户端开发的版本)在 Glassfish 3.1.2 上运行。
问题出在哪里?
谢谢你, 再见, 德米斯
【问题讨论】:
标签: rest cxf jax-rs apache-tomee