美文网首页
spring boot swagger2 不展示接口的问题

spring boot swagger2 不展示接口的问题

作者: 一介书生独醉江湖 | 来源:发表于2022-05-30 14:46 被阅读0次
# 今天遇到了一个奇怪的问题,新加入了一个Controller之后,swagger不显示了;
image.png
# 再加入这个Controller之前,swagger是正常访问的;
image.png
# 不用说,问题肯定出在这个Controller上了
# 除了类名,全部注释掉,一段一段代码放开;
    /**
     * *******
     * @param requestVo
     * @param results
     * @return
     */
    @ApiOperation(value = "*******", notes = "*******", produces = "application/json")
    @PostMapping(value = "createCharge", produces = {"application/json;charset=UTF-8"})
    public RestResponse createCharge(@RequestBody @Valid CreateChargeRequestVo requestVo , BindingResult results) {
        if (results.hasErrors()){
            return RestResponse.instance().fail(results.getFieldError().getDefaultMessage());
        }
        try {
            return chargeService.createCharge(requestVo);
        } catch (Exception e) {
            e.printStackTrace();
            logger.warn("*******-->失败");
        }
        return RestResponse.instance().success("*******-->成功");
    }
# 问题出在 CreateChargeRequestVo 中,有一个参数是这样的;
# example 这个属性我给的示例有问题,改正后,swagger就可以正常访问了

    @NotNull(message = "*********请求对象不能为空")
    @ApiModelProperty(value="*********请求对象", example="[\n" +
            "\t\t{\n" +
            "\t\t\t\"chargeType\": 1,\n" +
            "\t\t\t\"chargeWay\": 1,\n" +
            "\t\t\t\"recivePrice\": 300\n" +
            "\t\t}\n" +
            "\t]", notes="*********请求对象")
    private List<ChargeNotaryItemVo> chargeNotaryItemVoList;
总结:如果@ApiModelProperty中的example是json数组有问题;
     那么是有可能引发swagger所有的controller都不显示的,并且没有任何异常信息;
     如果出现类似情况,可以尝试先注释下这样的属性先试下;
     这里记录一下,增加一下印象;

相关文章

网友评论

      本文标题:spring boot swagger2 不展示接口的问题

      本文链接:https://www.haomeiwen.com/subject/zquoprtx.html