首页 文章

Swagger Apache CXF JAX-RS Maven

提问于
浏览
0

我在使用Apache CXF,JAX-RS服务时使用swagger时遇到了麻烦 .

beans.xml中:

<bean class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer"/>
<bean id="apiListingResourceJSON" class="com.wordnik.swagger.jaxrs.listing.ApiListingResourceJSON"/>
<bean id="apiDeclarationProvider" class="com.wordnik.swagger.jaxrs.listing.ApiDeclarationProvider"/>

使用示例:

@Path("/")
@Api(value="/", description="VenturoSoft eMustering Services")
public class Service {
    final static Logger logger = Logger.getLogger(Service.class);

    @GET
    @Path("/echo/{input}")
    @Produces(MediaType.TEXT_PLAIN_VALUE)
    @Consumes(MediaType.TEXT_PLAIN_VALUE)
    @ApiOperation(value = "Get Ping", response = String.class)
    public String ping(@PathParam("input") String input) {
        return PingImpl.ping(input);
    }

pom.xml中:

<dependency>
        <groupId>com.wordnik</groupId>
        <artifactId>swagger-jaxrs_2.10</artifactId>
        <version>1.3.12</version>
    </dependency>
    <dependency>
        <groupId>com.mangofactory</groupId>
        <artifactId>swagger-springmvc</artifactId>
        <version>1.0.2</version>
    </dependency>

跑:

mvn tomcat7:run-war

但是当我加载时:

http://localhost:13000/jaxrs-service/api

我没有回应 .

http://localhost:13000/jaxrs-service/echo/echoSomething

按需工作 .

1 回答

  • 2

    你正在寻找一些非常古老的依赖项 . 从您的代码中看起来您正在使用JAXRS . 如果是这种情况,最新的依赖应该是:

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

    请在此处关注JAXRS示例:

    https://github.com/swagger-api/swagger-samples/tree/master/java/java-jaxrs-cxf

    哪个应该向您展示如何正确配置服务器 .

相关问题