记一次Swagger页面报错/error 404的排查过程

2023-11-07

记一次Swagger页面报错/error 404的排查过程

使用springfox-swagger-ui展示的页面如下:

在这里插入图片描述
说是没有为/error这个路径指明确定的映射.
前后端使用的json传输数据格式,我也确实没有编码哪个controller中包含/error这样的映射,如果是框架把它当做页面的转发,那我也没有一个这样的ViewModel,而且我的控制层明确使用的是@RestController,不是转发页面的Controller.
所以问题出在Maven引用和配置文件上.

Maven引用

在这里插入图片描述
这个引用不会有问题,原因很简单–使用者众多,而且已经更新到这个版本了,若有问题早就有更新版本覆盖了
网上有很多人都遇到过Swagger-ui.html页面加载不出来的情况,大部分也都是404,很多帖子都是在WebMvcConfig里配置addResourceHandlers加载静态资源,Swagger的配置类上加@EnableSwagger2注解,以及明确RequestHandlerSelectors基础包的扫描路径这一套操作.后来我在解决了这个问题后自己试了一下,Swagger的配置类肯定是要中规中矩的按API描述配置,但是WebMvcConfig却可以不用配置也能出页面.
那就是别的地方的配置文件导致了页面出不来.

一步步排查config包下的配置文件,最终发现关于FastJsonConfig的配置类如果注释掉,Swagger页面会正常显示,
我的FastJsonConfig是继承自WebMvcConfigurationSupport后重写
configureMessageConverters方法的,重写的方法里不涉及/error映射,所以最终是因为WebMvcConfigurationSupport里的方法产生的问题.
现在为了使用configureMessageConverters方法里的json转换功能,产生了额外的耦合,所以换个思路,自己写一个fastJson的配置类,不继承WebMvcConfigurationSupport,说不定就能解决问题.于是我的最终的json配置类改成了这样的:
在这里插入图片描述
启动OK,页面出来了:
在这里插入图片描述
另外,这个swagger-ui可以与swagger-bootstrap-ui并存互补,各自单独显示也都不影响:
在这里插入图片描述
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

记一次Swagger页面报错/error 404的排查过程 的相关文章

随机推荐

  • 死锁/死锁的实现

    首先明白死锁产生的原因 死锁指两个或两个以上线程执行过程中 因争夺资源而造成的互相等待现象 四个必要条件 1 互斥性 线程对资源的占有是排他性的 一个资源只能被一个线程占有 直到释放 2 请求和保持条件 一个线程对请求被占有资源发生阻塞时
  • Unity上架苹果商店游戏资源加载的问题被拒4.2.3

    由于游戏资源加载的问题被4 2 3拒绝的解决方案 方案一 加一个下载资源说明 然后改一下逻辑 启动app可以正常进去 然后提醒用户在你进去体验的初期 我们会继续在Wi Fi环境下继续下载app需要的资源 方案二 真是本地解压资源 可以搞一个
  • 前端笔记目录

    HTML 部分 HTML 常用的标签 HTML 表格标签 HTML 列表标签 HTML 表单标签 CSS 部分 CSS 选择器 CSS 字体属性 JavaScript 部分 JavaScript ES6新特性 1 JavaScript ES
  • 简单的spring项目搭建流程

    一 搭建步骤 创建空maven项目 pom文件导入相应依赖jar包 创建包结构 domain test即可 创建JavaBean配置文件 编写简单示例 二 开始 1 创建一个空的maven项目 2 在pom xml文件中导入spring5依
  • AI小程序——文本绘图

    文章目录 一 摘要 二 文心 ERNIE ViLG 技术原理解读 图文双向生成统一建模 三 使用教程 2 1 exe下载 2 2 获取API 2 3 软件使用 2 4 源码链接 一 摘要 在文字生成图像上 文心 ERNIE ViLG 可以根
  • 力扣第99场双周赛题目记录(复盘)

    第一题 2578 最小和分割 给你一个正整数 num 请你将它分割成两个非负整数 num1 和 num2 满足 num1 和 num2 直接连起来 得到 num 各数位的一个排列 换句话说 num1 和 num2 中所有数字出现的次数之和等
  • 解决 VMware 克隆或复制的虚拟机,同时只有一台能上网问题

    VMware 克隆或复制虚拟机后 发现不能上网 多次调试后 确定是克隆或复制的虚拟机与原虚拟机 同时只能有一台能上网 原因是 克隆或复制的虚拟机 网卡 MAC 地址一样导致 重新分配的新 MAC 地址即可 方法如下 1 打开 Vmware
  • Matlab/Simulink-单相逆变电路双闭环仿真搭建

    1 前言 Simulink零基础 单相逆变电路双闭环仿真搭建 单相逆变电路仿真 单相逆变仿真 十分钟让你掌握单相电路简单的双闭环控制 本文不讲单相逆变电路的原理和构成 只涉及如何在Simulink中实现单相逆变电路 搭建的过程在下面视频里了
  • Unity射线穿透UI解决

    unity场景中 射线是可以穿透UI的 我用过很多版本 都有这个问题 比如我现在用2020版本的unity做了个范例 我在场景中新建了一个cube名叫 我秦始皇打钱 点击这个物体就会出现log显示这个物体的名字 代码在下面 运行之后确实会弹
  • 计算机原码补码和反码的计算方法,一个数的原码,反码,补码怎么算,原码 反码 补码...

    数在计算机中是以二进制形式表示的 数分为有符号数和无符号数 原码 反码 补码都是有符号定点数的表示方法 一个有符号定点数的最高位为符号位 0是正 1是副 以下都以8位整数为例 原码就是这个数本身的二进制形式 例如 0000001 就是 1
  • Vue3+ts+element-plus 组件的二次封装-- 头部搜索条件的封装

    Vue 常用笔记 本人是一个web前端开发工程师 主要是vue框架 整理了一些Vue常用的技术 一方面是分享 一方面是做总结 今后也会一直更新 有好建议的同学欢迎评论区分享 Vue专栏 点击此处 Vue组件库专栏 点击此处 Vue2 vs
  • Unity中同时修改物体及其所有子物体层级

    简单说一下思路 首先你得判定当前物体是否有子物体 没有的话就直接设置层级 有的话就再回到1 继续判断子物体下是否还有子物体 接下来结合代码再好好理解一下 private void ChangeLayer Transform transfor
  • matlab实现牛顿下山法

    说起牛顿下山法 首先要提牛顿法 牛顿法是求解非线性方程的一个重要方法 具体可以点击牛顿法 虽然牛顿法作为一个二阶的迭代收敛方法 但是其对于函数和初始点的要求都比较高 而牛顿下山法则是有效降低这些要求的一种技巧 牛顿下山法的迭代公式如下 x
  • [C/C++] 创建后台接受命令程序

    C C 多线程时 运行时输入自定义参数 达到控制线程的目的 基础概念 线程 线程是操作系统能够进行运算调度的最小单位 它被包含在进程之中 进程包含一个或者多个线程 进程可以理解为完成一件事的完整解决方案 而线程可以理解为这个解决方案中的的一
  • 弹性布局-更优秀的Flex

    Flex布局详解 浮动布局的优缺点 图文的环绕显示 浮动元素 同行显示 适配性更好 忘记清浮动 高度坍塌 flex布局的优缺点 IE10以下不支持 用来做布局的 很方便 flex布局 flex flexible 弹性布局 移动端用的最多 P
  • LeetCode——345. 反转字符串中的元音字母

    反转字符串中的元音字母 题目 思路 代码 结果 题目 给你一个字符串 s 仅反转字符串中的所有元音字母 并返回结果字符串 元音字母包括 a e i o u 且可能以大小写两种形式出现 思路 没有什么难度 很简单的数组判断交换 代码 clas
  • 操作系统——启动操作系统及ucore-lab0 coding

    花了一周多时间把操作系统的课程看了一遍 晚上结课的时候尝试性地想看着笔记的标题回忆一下内容 发现 嗯 一片混沌 趁热打铁做个总结吧 辅以uCoreLab上的coding 一个走 1 操作系统的启动 未启动前 os和Bootloader都存放
  • 图形学/OpenGL/3D数学/Unity

    1 场景管理的数据结构 总结 游戏开发最常用的空间数据结构是四叉 八叉树和BVH树 而BSP树基本上只能应用于编辑器上 k d树则只能用在特殊问题应用场景 2 帧同步与状态同步 https gameinstitute qq com comm
  • lattice 包中的直方图绘制

    1 直方图 library lattice install packages nutshell library nutshell histogram DBWT DPLURAL data births2006 smpl main births
  • 记一次Swagger页面报错/error 404的排查过程

    记一次Swagger页面报错 error 404的排查过程 使用springfox swagger ui展示的页面如下 Maven引用 使用springfox swagger ui展示的页面如下 说是没有为 error这个路径指明确定的映射