我正在使用Jersey 2.x,并将Swagger集成到我的应用程序中。
Swagger与Jersey集成的API文档:Swagger-Core-Jersey-2.X-Project-Setup
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-jersey2-jaxrs</artifactId>
<version>1.5.0</version>
</dependency>
在本地计算机+ Tomcat上运行:
在WebSphere(WAS)上运行:
如果在WAS上部署相同的war文件,则GET swagger.json端点会收到404 Not Found
错误。
但是,其他CRUD操作API可以正常工作。我还能够看到在Bootstrap类中打印的LOG语句,这意味着挥舞着草草了,但是端点未按预期工作。
下面是我在web.xml中初始化的Bootstrap类
public class Bootstrap extends HttpServlet {
private static Logger LOGGER = LogManager.getLogger(Bootstrap.class);
@Override
public void init(ServletConfig config) throws ServletException {
super.init(config);
System.out.println("Inside Bootstrap........");
BeanConfig beanConfig = new BeanConfig();
beanConfig.setTitle("Rest APIs Documentation");
beanConfig.setContact("you@your-company.com");
beanConfig.setVersion("1.0.0");
beanConfig.setSchemes(new String[]{"http"});
//beanConfig.setHost("localhost:9060");
//beanConfig.setBasePath("/mdm-swagger/api");
beanConfig.setResourcePackage("com.api.rs");
beanConfig.setPrettyPrint(true);
beanConfig.setScan(true);
LOGGER.info("Inside Bootstrap finish........");
}
}
我已注释了host和basepath,因为我想像任何客户端一样使用swagger进行文档编制。
您能否提出可能的解决方案,为什么我会收到404 Not Found错误?
非常感谢。