gpt4 book ai didi

java - 将对象传递给 SOAPHandler,无需在 JAX-WS 中进行强制转换

转载 作者:行者123 更新时间:2023-12-01 15:05:00 27 4
gpt4 key购买 nike

我正在客户端寻找一种方法,将对象传递给我的 SOAPHandler,而无需将我的 Port 对象转换为 BindingProvider 来获取请求上下文。通常您会看到如下代码:

Map<String,Object> requestContext = ((BindingProvider)port).getRequestContext();
requestContext.put("key", object);

处理程序中的代码如下所示:

public boolean handleMessage(SOAPMessageContext context) {
Boolean isRequest = (Boolean) context.get(MessageContext.MESSAGE_OUTBOUND_PROPERTY);

if (isRequest) {
// Do stuff to SOAP header based on "object"
}
return true;
}

我不喜欢这种转换,因为我使用 Spring 的 AOP 来包装来自客户端 Port 对象的调用,而转换会导致错误。

最佳答案

您使用的是2.5.6之前的spring版本吗?如果是这种情况,你可能只需要升级 spring 即可。这个change log显示他们在 2.5.6 版本中添加了对 BindingProvider 接口(interface)的支持。

关于java - 将对象传递给 SOAPHandler,无需在 JAX-WS 中进行强制转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13088578/

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