Java Dropwizard/JAX-RS 1.x(JSR 311)中的资源链接

Java Dropwizard/JAX-RS 1.x(JSR 311)中的资源链接,java,rest,jersey,jax-rs,dropwizard,Java,Rest,Jersey,Jax Rs,Dropwizard,我在Dropwizard中链接资源时遇到问题。使用JAX-RS2.0,我们有了神奇的javax.ws.RS.core.Link类,它的构建器可以为您完成几乎所有的工作。不幸的是,Dropwizard 0.7.1并不依赖于新的2.0API,而是依赖于旧的javax.ws.rs:jsr311 APIAPI,后者无法处理链接。或者可以吗?这就是我想用Dropwizard解决的问题。我可能有两种方法可以做到这一点,但我不知道其中任何一种是否有效: 选项1:我将JAX-RS 2.0依赖项添加到我的项目中

我在Dropwizard中链接资源时遇到问题。使用JAX-RS2.0,我们有了神奇的
javax.ws.RS.core.Link
类,它的构建器可以为您完成几乎所有的工作。不幸的是,Dropwizard 0.7.1并不依赖于新的2.0API,而是依赖于旧的
javax.ws.rs:jsr311 API
API,后者无法处理链接。或者可以吗?这就是我想用Dropwizard解决的问题。我可能有两种方法可以做到这一点,但我不知道其中任何一种是否有效:

  • 选项1:我将JAX-RS 2.0依赖项添加到我的项目中。瞧!我有林克。但问题是,它不能很好地与Jersey的旧实现协同工作-我从UriBuilder获得了
    AbstractMethodException
    ,它显然从版本1更改为版本2。因此,答案是提供新的实现<我能做吗?如果是,我该怎么做?新的实现是否能很好地与dropwizard配合使用?

  • 选项2:我可以添加一些其他资源链接到dropwizard。是否有其他链接标准/库?我不能使用
    jersey声明性链接
    ,因为它混合了表示和资源(链接发生在表示中),我希望我的表示不知道任何关于资源层的事情那么Dropwizard、Jersey和JAX-RS 1还有其他链接标准吗?


    • 我终于找到了问题的答案

      选择2是一条死胡同。并没有其他类似jax-rs-2的链接库指向dropwizard或jersey本身

      选项一也很难做到,但幸运的是,dropwizard昨天发布了其框架的版本0.8.0-rc1,该版本依赖于jersey 2,jersey 2是JAX-RS 2.0的实现。因此,对于所有希望在dropwizard中使用HATEOAS的用户,0.8.0版是适合您的