2010-01-18 105 views
0

我正在尝试在Eclipse中为Resteasy服务构建客户端。我认为这很简单 - 但Resteasy所做的很多魔法(例如查找POJO上的注释,加载Resteasy提供程序等)似乎被OSGi类加载器破坏了。我花了很多时间解决依赖关系和好友策略的问题,但我遇到了一个绊脚石。我将对其进行描述,但最好的解决方案是为Resteasy客户端预先存在的一组OSGi/Eclipse插件。没有那个..OSGi/Eclipse RCP环境中的Resteasy客户端

could not find writer for content-tyope application/xml type: com.company.Pojo 
org.jboss.resteasy.client.ClientRequest.writeRequestBody(ClientRequest:473) 

这是resteasy 1.2.1.GA.

干杯,罗布。

回答

1

好的 - 尽管它不是最优雅的解决方案,但最终设法对此进行了排序。

采取的步骤:

  1. 使用Eclipse的创建插件从JAR文件向导
  2. 进口
    • JAXRS-API 1.2.1.GA.jar
    • RestEasy的-jaxrs- 1.2.1.GA.jar
    • resteasy-jaxb-provider-1.2.1.GA.jar
    • jaxb-api-2.1.jar
    • JAXB的IMPL-2.1.12.jar
    • SLF4J-API-1.5.8.jar
    • SLF4J-简单1.5.8.jar
  3. 出口以下的包
    • javax.ws.rs
    • javax.xml.bind.annotation
    • org.jboss.resteasy.client(和所有子包)
    • org.jboss.resteasy.plug ins.providers
    • org.jboss.resteasy.plugins.providers.jaxb
    • org.jboss.resteasy.spi
  4. 在插件添加,作为一个相关性,并获得到客户端的参考通常的方式