Jersey 2.7:使用网络片段插入子资源

时间:2014-05-14 13:48:50

标签: java jax-rs jersey-2.0

我正在开发一个依赖于核心库的应用程序,可以将多个模块作为Web片段。该应用程序在Tomcat上运行并公开Jersey 2.7 WS。

在核心库中,有一个应用程序定义,以及专用包中的几个(核心)资源:

@ApplicationPath("/a/*")
public class MyWSApplication extends ResourceConfig {

    public MyWSApplication() {

        packages("com.example.ws.resources");
        register(JacksonFeature.class);
        register(ExceptionListener.class);
    }

}

现在,假设核心库中定义了两个核心资源:

  • users
  • items

映射路径

  • /users:所有用户
  • /users/{id_user}:特定用户
  • /items:所有项目
  • /items/{id_item}:特定项目
  • /users/{id_user}/items:与使用资源定位器映射的特定用户相关的项目。

一切都按预期工作。

我的疑问是:如何在可选网络片段中的/users/{id_user}下定义新的子资源?

要清楚,我想在路径下定义一个opt_res资源:

  • /opt_res:单独opt_res
  • /users/{id_user}/opt_res:获取与用户相关的opt_res

此外,opt_res必须有子资源。

因此,如果未安装网络片段,则点击路径<host>/a/opt_res<host>/a/users/{id_user}/opt_res应该为HTTP/404,如果是,则为子资源。

0 个答案:

没有答案