gpt4 book ai didi

java - Swagger jaxrs 不工作

转载 作者:行者123 更新时间:2023-11-30 10:57:10 27 4
gpt4 key购买 nike

我制作了以下 pom.xml 条目:

<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-jaxrs</artifactId>
<version>1.5.0</version>
</dependency>

并创建了一个 servlet:

public class SwaggerJaxrsConfig extends HttpServlet {
@Override
public void init(ServletConfig servletConfig) {
try {
super.init(servletConfig);
BeanConfig beanConfig = new BeanConfig();
beanConfig.setVersion("1.0.2");
beanConfig.setSchemes(new String[]{"http"});
beanConfig.setHost("localhost:8080");
beanConfig.setBasePath("/api");
beanConfig.setResourcePackage("com.mypackage.resource");
beanConfig.setScan(true);
} catch (ServletException e) {
System.out.println(e.getMessage());
}
}
}

并将其添加到 web.xml 中:(我可以通过添加它来跳过 web.xml,但出于某种原因我仍然使用 sevlet 2.5

@WebServlet(name = "SwaggerJaxrsConfig", loadOnStartup = 1)
<servlet>
<servlet-name>SwaggerJaxrsConfig</servlet-name>
<servlet-class>com.SwaggerJaxrsConfig</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>

我可以在日志中看到以下几行:[org.reflections.Reflections] Reflections 花了 332 毫秒扫描 2 个 url,产生了 250 个键和 1186 个值

但后来我在 http://localhost:8080/api 上收到 404

你知道我做错了什么吗?

最佳答案

它对我也不起作用。所以我使用 following 代替 httpservlet 然后它开始工作

 <servlet>
<servlet-name>Jersey2Config</servlet-name>
<servlet-class>io.swagger.jersey.config.JerseyJaxrsConfig</servlet-class>
<init-param>
<param-name>api.version</param-name>
<param-value>1.0.0</param-value>
</init-param>
<init-param>
<param-name>swagger.api.basepath</param-name>
<param-value>http://localhost:8080/api</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>

有关我如何实现的更多详细信息,请参阅以下链接 https://github.com/sanketsw/jax_rs_REST_Example

关于java - Swagger jaxrs 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32741758/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com