【发布时间】:2016-10-31 20:38:20
【问题描述】:
我正在尝试在具有两个 Application 类的 Java 应用程序上实现 Swagger,因为一个处理“公共”Web 服务,另一个处理“管理”Web 服务。我正在尝试生成两个单独的 swagger.json 文件,每个 Application 类一个。但是,两个 url 只生成其中一个。这是一些代码:
公共应用类:
@WebServlet
@ApplicationPath("/public")
public class PublicApplication extends Application {
public PublicApplication() {
BeanConfig beanConfig = new BeanConfig();
beanConfig.setVersion("1.0");
beanConfig.setTitle("A Fine Title");
beanConfig.setDescription("A Fine Description.");
beanConfig.setSchemes(new String[]{"http"});
beanConfig.setBasePath("/api");
beanConfig.setResourcePackage("com.test.rest.resource.external");
beanConfig.setPrettyPrint(true);
beanConfig.setScan(true);
}
}
私有应用类:
@WebServlet
@ApplicationPath("/admin")
public class AdminApplication extends Application {
public AdminApplication() {
BeanConfig beanConfig = new BeanConfig();
beanConfig.setVersion("1.0");
beanConfig.setTitle("Another Fine Title");
beanConfig.setDescription("Another Fine Description.");
beanConfig.setSchemes(new String[]{"http"});
beanConfig.setBasePath("/apiTwo");
beanConfig.setResourcePackage("com.test.rest.resource.internal");
beanConfig.setPrettyPrint(true);
beanConfig.setScan(true);
}
}
现在,如果我点击这些网址中的任何一个,我都会得到相同的“公共”招摇 json 文件:
我做错了什么?
感谢所有阅读的人!
【问题讨论】:
-
我遇到了同样的问题。你找到解决办法了吗?
-
我的项目的要求发生了变化,因此不再需要此设置......所以不需要。我最终不需要这样配置。但是,我将来可能会这样做,所以我仍然对答案感兴趣。
标签: java web-services jax-rs swagger swagger-2.0