gpt4 book ai didi

java - 使用 MessageContext 自定义响应消息

转载 作者:行者123 更新时间:2023-12-01 12:52:26 24 4
gpt4 key购买 nike

我想知道如何为我的 MessageContext 设置自定义响应消息?我知道如何在服务器端设置 HTTP_RESPONSE_CODE200404 等,以及如何在客户端读取它们。但是我如何设置像“错误请求,键和值不能为空”这样的自定义消息?是否有任何东西旨在用于创建自定义响应消息?

服务器

@WebServiceProvider
@ServiceMode(value = Service.Mode.PAYLOAD)
public class MWServiceProvider implements Provider<Source> {

@javax.annotation.Resource(type=WebServiceContext.class)
private WebServiceContext wsContext;

@Override
public Source invoke(Source source) {
MessageContext messageContext = wsContext.getMessageContext();
...
// read the source content, which is a key-value-pair for this example
if (keyValuePair.getKey().isEmpty() || keyValuePair.getValue().isEmpty()) {
// bad request, key or value can not be empty
messageContext.put(MessageContext.HTTP_RESPONSE_CODE, HttpURLConnection.HTTP_BAD_REQUEST);
// ??? HOW CAN I SET A CUSTOM MESSAGE LIKE
// ??? "Bad request, key and value can not be empty"
// ??? TO MY MESSAGE RESPONSE CONTEXT?
} else {
...
messageContext.put(MessageContext.HTTP_RESPONSE_CODE, HttpURLConnection.HTTP_OK);
...
}
return source;
}
...
}

读取客户端状态码:

Map<String, Object> response = dispatch.getResponseContext();
Integer statusCode = (Integer) response.get(MessageContext.HTTP_RESPONSE_CODE);
System.out.println("status_code: " + statusCode);

最佳答案

您可以通过 key MessageContext.SERVLET_RESPONSE访问底层javax.servlet.http.HttpServletResponse在您的 MessageContext 中。从那里您应该能够设置 error code and message

关于java - 使用 MessageContext 自定义响应消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24118707/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com