Java 使用Swagger的Jersey Rest API文档

Java 使用Swagger的Jersey Rest API文档,java,rest,maven,swagger,jersey-1.0,Java,Rest,Maven,Swagger,Jersey 1.0,我试图使用Swagger查看API文档中的jersey rest服务方法列表。浏览了GitHub站点中给出的几个示例/示例。但当我尝试访问上下文根链接时,仍然无法列出我的服务方法。找不到正在获取的404服务 pom.xml: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ma

我试图使用Swagger查看API文档中的jersey rest服务方法列表。浏览了GitHub站点中给出的几个示例/示例。但当我尝试访问上下文根链接时,仍然无法列出我的服务方法。找不到正在获取的404服务

pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.danfoss.des</groupId>
<artifactId>SampleRestProject</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>SampleRestProject Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>3.8.1</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-server</artifactId>
        <version>1.9</version>
    </dependency>
    <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-client</artifactId>
        <version>1.9</version>
    </dependency>
    <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-json</artifactId>
        <version>1.9</version>
    </dependency>
    <dependency>
        <groupId>io.swagger</groupId>
        <artifactId>swagger-jersey-jaxrs</artifactId>
        <version>1.5.0</version>
    </dependency>
    <!-- <dependency>
        <groupId>com.wordnik</groupId>
        <artifactId>swagger-jaxrs_2.9.1</artifactId>
        <version>1.2.0</version>
        <scope>compile</scope>
    </dependency> -->
</dependencies>
<build>
    <finalName>SampleRestProject</finalName>
</build>

我正在尝试访问该链接以查看列表:


有人能帮我找出到底哪里出了问题,或者我是否遗漏了什么。

JerseyJAXRConfig类是
swagger-jersey2-jaxrs
库的一部分,因此在部署webapp时不可用,因为您使用的是与jersey 1.9结合使用的
swagger-JerseyJAXRS
(这很好)

简单地替换

io.swagger.jaxrs.config.jerseyjaxrconfig

io.swagger.jaxrs.config.defaultjaxrconfig

使用正确的配置类,然后重试访问

同时,考虑将Swagger的BasePad定义为相对路径,这样你就可以在不同的端口上部署WebApp。

<init-param>
    <param-name>swagger.api.basepath</param-name>
    <param-value>/SampleRestProject/rest</param-value>
</init-param>

swagger.api.basepath
/项目/休息

谢谢你,卢西亚诺先生。现在我可以按照你的建议列出替换servlet类后的服务方法。感谢你的帮助。@Tamem510太好了,我看你是新手。如果你觉得有答案解决了问题,请单击绿色复选标记将其标记为“已接受”。
package com.danfoss.des;

import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;

import com.danfoss.model.Track;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;


@Path("/helloWorld")
@Api(value="helloWorld", description="Sample hello world swagger service")
public class RESTfulHelloWorld 
{
    @GET
    @Produces("text/html")
    @Path("/startingPage")
    @ApiOperation(value="Starting of the swagger service")
    public Response getStartingPage()
    {
        String output = "Staring method is invoked";
        return Response.status(200).entity(output).build();
    }
}
<init-param>
    <param-name>swagger.api.basepath</param-name>
    <param-value>/SampleRestProject/rest</param-value>
</init-param>