当前位置: 首页 > 知识库问答 >
问题:

在jersey/jax-rs中加载swagger-用户界面目录

欧君之
2023-03-14

有一个web应用程序在一个war文件中运行在tomcat中,作为其中的一部分,我用jax rs实现了jax rs RESTAPI,并由jersey绑定。这些RESTAPI有一些招摇过市的注释,但是我似乎无法使招摇过市的ui正常工作。

结构

warFile
+docs
----swagger is here
+web-inf
++web.xml
++lib
----all my jax-rs jars here
+meta-inf
----nothing

我定义的运动衫配置

public class JerseyConfig extends ResourceConfig {

        public JerseyConfig() throws Exception {
            packages("com.myapp.somefiles");

            BeanConfig config = new BeanConfig();
            config.setBasePath("rest");
            config.setResourcePackage("com.myapp.somefiles");
            config.setScan(true);

        }

网状物xml

   <servlet>
        <servlet-name>com.myapp.somefile.JerseyConfig</servlet-name>
    </servlet>
    <servlet-mapping>
        <servlet-name>com.myapp.somefile.JerseyConfig</servlet-name>
        <url-pattern>/rest/*</url-pattern>
    </servlet-mapping>

因此,当我在war文件中有swagger ui html文件时,我可以访问它们;本地主机:8181/warFile/docs。但是,我希望将其加载到与rest api相同的URL上,可以是localhost:8181/warFile/rest/docs

我可以进入昂首阔步。本地主机上的json文件:8181/warFile/rest/swagger。json

我需要在servlet或beanconfig的上下文中使用类加载器加载swagger吗?swagger用户界面也可以与 /lib目录中的jar依赖项一起打包。我可以以某种方式引用它吗?

共有1个答案

何兴安
2023-03-14

使用Swagger UI最简单的方法是将其打包到WAR文件中:从GitHub存储库下载Swagger UI文件,并将dist目录的内容复制到项目的web内容文件夹中。然后只需更新索引。指向你的招摇。json

 类似资料:
  • 我们可以通过 实现创建JAX-RS示例。 为此,需要加载 jersey相关jar文件或使用Maven框架。 在这个例子中,我们使用jersey jar文件来实现JAX-RS jersey示例。 Jersey Jar文件下载网址:https://jersey.github.io/download.html 打开Eclipse,创建一个Web工程: restfuljersey,如下图所示 - JAX-

  • 我正在学习Jersey/JAX-RS,需要一些ExceptionMapper方面的帮助。 我有一个UserFacade类、AbstractFacade类和User类本身,它们都是非常标准的,主要是通过在NetBeans中创建一个新的Web服务RestFUL项目生成的。我的问题是,我想现在开始捕捉错误,比如“唯一约束违反”错误。我想我需要实现一个异常映射器...我的门面有以下内容: 这是我得到的错误

  • 我试图在was 8.5上部署使用jersey的jax-rs客户机应用程序。 我希望我不需要在war中打包jersey JAR,因为was将提供它们。 但在试图调用servlet时,我遇到了这个错误: 我可以做些什么来使用was库,这样我就不需要把它们打包在我的应用程序中了吗?

  • 我在加载Swagger UI/启用UIendpoint时遇到了一个问题。Maven项目,Jersey版本-2.12,Swagger版本-1.5.1-m2 我有一个通过编程配置的jersey web应用程序。在我的ResourceConfig(扩展)中,我为Swagger设置了以下内容: 我已经将Swagger UI dist的内容复制到我的web应用程序文件夹中。 当我点击http://local

  • 我试图用嵌入式jetty服务器为生成的swagger类设置一个小型服务器。到目前为止,它可以使用Jetty的以下配置: 对API的调用按预期工作。还有,我的“自定义过滤器”工作没有任何问题。 为了在主体中构建响应,我使用以下代码: 期望: 这是swagger和jaxr的默认行为吗? 这是可配置的吗? 怎么做? 我认为我尝试将类/包加载到servlet的方式有问题。如本问题所述:swagger JS

  • 我有一个基本的REST web服务可以工作,但我确实有一个问题。下面是一个简短的代码片段。