java - 当我尝试获取 swagger.json 时总是收到错误 404

标签 java rest swagger resteasy seam

我的问题是,我有一个带有java接缝的RESTEasy api,一个maven项目,它可以正常工作,但是当我尝试用swagger记录这个api时,swagger.json文件永远不会被创建。我不知道问题是什么。

pom.xml:
    <dependency>
        <groupId>org.jboss.seam</groupId>
        <artifactId>jboss-seam-resteasy</artifactId>
        <version>2.2.2.Final</version>
    </dependency>

    <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-jaxrs</artifactId>
        <version>2.2.2.GA</version>
    </dependency>

    <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-jackson-provider</artifactId>
        <version>2.2.2.GA</version>
    </dependency>

    <!-- Dependencia swagger -->
    <!-- https://mvnrepository.com/artifact/io.swagger/swagger-annotations -->
    <dependency>
        <groupId>io.swagger</groupId>
        <artifactId>swagger-annotations</artifactId>
        <version>1.5.20</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/io.swagger/swagger-jaxrs -->
    <dependency>
        <groupId>io.swagger</groupId>
        <artifactId>swagger-jaxrs</artifactId>
        <version>1.5.20</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/io.swagger/swagger-core -->
    <dependency>
        <groupId>io.swagger</groupId>
        <artifactId>swagger-core</artifactId>
        <version>1.5.20</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/io.swagger/swagger-models -->
    <dependency>
        <groupId>io.swagger</groupId>
        <artifactId>swagger-models</artifactId>
        <version>1.5.20</version>
    </dependency>

web.xml:

<!-- Swagger -->
<servlet>
    <servlet-name>SwaggerConfigurationServlet</servlet-name>
    <display-name>SwaggerConfigurationServlet</display-name>
    <description></description>
    <servlet-class>packageOfSwaggerConfiguration.SwaggerConfigurationServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>`  

SwaggerConfigurationServlet:

@ApplicationPath("v3")

public class SwaggerConfigurationServlet extends Application {

/**
 * 
 */
private static final long serialVersionUID = -9026370104891567770L;

public void Init(ServletConfig config) throws ServletException{
    BeanConfig beanConfig=new BeanConfig();
    beanConfig.setSchemes(new String[] {"http"});
    beanConfig.setBasePath("http://localhost:8080/NameOfProyect/seam/resource/rest");
    beanConfig.setTitle("Swagger");
    beanConfig.setVersion("1.0");
    beanConfig.setResourcePackage("PackageOfApi");
    beanConfig.setScan(true);
    beanConfig.setPrettyPrint(true);
}
public Set<Class<?>> getClasses() {
    Set<Class<?>> s = new HashSet<Class<?>>();


    // here I add my REST WSs
    s.add(ApiListingResource.class);
    s.add(SwaggerSerializers.class);


    return s;
}

index.html:



$(function () {

  var url = window.location.search.match(/url=([^&]+)/);
  if (url && url.length > 1) {
    url = decodeURIComponent(url[1]);
  } else {
    url = "http://localhost:8080/NameOfProyect/seam/resource/rest/swagger.json";
  }

我预计 swagger.json 文件位于 http://localhost:8080/NameOfProyect/seam/resource/rest/swagger.json 中或者 http://localhost:8080/NameOfProyect/seam/resource/rest/v3/swagger.json

但从未成立。

最佳答案

我猜你的应用程序路径是错误的。你应该检查一下吗?

关于java - 当我尝试获取 swagger.json 时总是收到错误 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56953483/

相关文章:

java - 如何从客户端 Java 调用 PUT 方法?

java - REST 重复 URL

.net - 通过 Docker 运行 .Net Core 应用程序时无法找到 .XML 文件

Java Map实现渐进复杂度(HashMap、LinkedHashMap、TreeMap)

java - StringBuilder 是否慢到我应该缓存它的结果?

java - form.submit() 将在表单内触发 double

Java:模式、扫描仪示例不起作用

c# - 如何解析包含 C# 列表的 Json WebApi 响应

c# - 为什么 Swagger CodeGen 3.0.x 使用 AllOf[Classname] 生成类

swagger - swagger-editor 将 json 或 yaml 保存到远程后端的选项是什么?