首页 > 解决方案 > 将 ResponseStatus 解析为 Response

问题描述

我需要将某些内容返回到Response类格式中,但我有一个SAMLResult变量,所以当我得到 Status ( ResponseStatus) 时,我找不到任何方法将其解析为Response变量。

有人知道怎么做吗?

标签: javaresponsesaml

解决方案


如果我正确理解您的问题,您只对数字 SAMLResponse 状态感兴趣,需要将其作为新的 type 值返回Response

因此,您可以简单地使用 SAMLResponse 状态值构建一个新的响应:

int samlStatus = SAMLResponse.ResponseStatus;
Response response = Response.status(samlStatus).build();
return response;

或者您可以实例化一个新Response对象(通过实现抽象 Response 类中的所有方法,例如使用默认值)并SAMLResponse.ResponseStatus在方法中设置值getStatus()。例如:

Response response = new Response() {
    @Override
    public int getStatus() {
        int samlStatus = SAMLResult.ResponseStatus;
        return samlStatus;
    }
    // override all other Response methods ...
}
return response;

推荐阅读