微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 @Context 注入 HttpServletRequest 会导致 openapi 向 swagger 添加额外的类

如何解决使用 @Context 注入 HttpServletRequest 会导致 openapi 向 swagger 添加额外的类

嘿,我正在尝试自由使用 OpenAPI 21.0.0.5功能

<featureManager>
    <feature>webProfile-8.0</feature>
    <feature>microProfile-3.3</feature>
</featureManager>

我开始工作了。但是,一旦我添加

@Context
protected HttpServletRequest httpRequest;

public HttpServletRequest getHttpServletRequest() {
    return httpRequest;
}

对于我的资源类,我的 swagger 输出接收类为 BufferedReader、Enums、ServletoutputStream 等。如果使用 @Context 添加它,有没有办法让它作为模型的一部分忽略HttpServletRequest?

完整的上下文类

public abstract class AbstractResource {
    @Context
    public UriInfo uriInfo;
    @Context
    protected HttpServletRequest httpRequest;
    @Inject
    protected JsonMapper jsonMapper;

    public AbstractResource() {
    }

    public HttpServletRequest getHttpServletRequest() {
        return this.httpRequest;
    }

    public abstract String getBaseUri();

    public String getDefaultBaseUri() {
        return this.uriInfo.getBaseUri().toString();
    }

    public String getPath() {
        return this.uriInfo.getPath();
    }

    public String getRequestType() {
        return this.getHttpServletRequest().getmethod();
    }

    public AbstractHalJsonObject addSelfLinks(AbstractHalJsonObject abstractHalJsonObject,String path) {
        return abstractHalJsonObject.addSelfLinks(this.getBaseUri(),path);
    }

    public AbstractHalJsonObject addSelfLinks(AbstractHalJsonObject abstractHalJsonObject) {
        return this.addSelfLinks(abstractHalJsonObject,this.getPath());
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。