【问题标题】:JAX-RS: Is it possible to have an externally configurable @PATH?JAX-RS:是否可以有一个外部可配置的@PATH?
【发布时间】:2014-12-11 19:01:11
【问题描述】:

是否可以从给定类的配置(web.xml 等)中加载 @PATH 注释的值?

@Path(<value loaded from config>)
public class myRestService {
...

【问题讨论】:

  • 我们为什么不从用例开始。路径可配置的用例是什么?

标签: java jboss jax-rs wildfly


【解决方案1】:

独立于 JAX-RS:Java 中的注解是编译时常量,因此它们不能在运行时更改。

我不知道您的用例,但更改注释值的可能方法是:

  • 编译前替换变量,例如通过一个 Maven 插件。
  • described here一样动态添加@Path注解。
  • 使用一个映射到 /* 的通用 ResourceClass 来决定应该返回哪个 subresource

如果其中一种方法有意义,请不要发表评论,因为我不知道您为什么要更改它们。由于 URI 命名资源,我看不出有任何更改它的理由。另见:Cool URIs don't change

更新:JAX_RS_SPEC-60 请求“注册 JAX-RS 资源的动态方式(不基于注释)”。

【讨论】:

    【解决方案2】:

    根据 JAX-RS 规范 (here),我认为没有标准的方法可以做到这一点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-04
      • 1970-01-01
      • 2023-03-15
      • 1970-01-01
      相关资源
      最近更新 更多