java - JAX-RS:是否可以有一个外部可配置的@PATH?

标签 java jboss jax-rs wildfly

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

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

最佳答案

独立于 JAX-RS:Java 中的注释是编译时常量,因此无法在运行时更改。

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

  • 在编译前替换变量,例如通过 Maven 插件。
  • 动态添加 @Path 注释,如 described here .
  • 使用一个映射到 /* 的通用资源类来决定使用哪个 subresource应该被退回。

如果这些方法之一有意义,则不予评论,因为我不知道您为什么要更改它们。由于 URI 命名了资源,我看不出有任何理由更改它。另请参阅:Cool URIs don't change

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

关于java - JAX-RS:是否可以有一个外部可配置的@PATH?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26403934/

相关文章:

java - Java GC 如何调用 finalize() 方法?

Java 媒体框架 MP3 插件

java - 使用Java制作查询结果表(GUI)

java - java 中客户端 Web 服务出错 : [org. jboss.wsf.stack.cxf.resolver.JBossWSResourceResolver] 无法打开资源流

java - jboss 服务器上的 war 部署失败

java - 未从 VertxResteasyDeployment 调用 JAX-RS DynamicFeature 实现

jersey - 注释 Web 方法参数时,JAX-RS Jersey 客户端获得 400 响应

java - 访问网络服务

java - Ember POST 请求在 JAX-RS 中使用 XML Jersey 响应进行响应

java - jBoss 作为 Maven 插件 - 无法连接到本地主机 :9990