首页 > 解决方案 > 使用 Quarkus 时配置公开的 Web 服务资源

问题描述

我有一个使用 Quarkus 和 RESTEasy 的多模块项目。一个模块目前包含不同 Web 服务端点的实现,即:

@Produces({MediaType.APPLICATION_JSON})
@Consumes({MediaType.APPLICATION_JSON})
@Path("/foo")
public class FooResource {}

@Produces({MediaType.APPLICATION_JSON})
@Consumes({MediaType.APPLICATION_JSON})
@Path("/bar")
public class BarResource {}

该模块包含一个beans.xml文件并由 Quarkus 处理以启用 CDI。

我想从一个或多个其他模块中使用此模块,但有选择地公开端点。

FooApplication暴露/foo端点并BarApplication暴露/bar端点。如果我只是创建一个依赖于另一个模块的 Quarkus/RESTEasy 应用程序,它总是会暴露两个端点,我似乎找不到任何方法来控制它。我可以移动FooResourceFooApplicationBarResourceBarApplication但我想避免这种情况。

是否可以控制 Quarkus/RESTEasy 公开哪些资源(在编译时或运行时)?

标签: javaresteasyquarkus

解决方案


推荐阅读