如何修改出站CXF请求的原始XML消息?

如何修改出站CXF请求的原始XML消息?,第1张

如何修改出站CXF请求的原始XML消息

我今天也有这个问题。经过大量的哭泣和咬牙切齿,我能够在CXF源附带的configuration_interceptor演示中更改StreamInterceptor类:

OutputStream os = message.getContent(OutputStream.class);CachedStream cs = new CachedStream();message.setContent(OutputStream.class, cs);message.getInterceptorChain().doIntercept(message);try {    cs.flush();    CachedOutputStream csnew = (CachedOutputStream) message.getContent(OutputStream.class);    String soapMessage = IOUtils.toString(csnew.getInputStream());    ...

soapMessage
变量将包含完整的SOAP消息。您应该能够 *** 纵肥皂消息,将其刷新到输出流,并进行
message.setContent(OutputStream.class...
调用以对消息进行修改。这没有保修,因为我本人对CXF还是很陌生!

注意:CachedStream是StreamInterceptor类中的私有类。不要忘记将拦截器配置为在PRE_STREAM阶段中运行,以便SOAP拦截器有机会编写SOAP消息。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5176024.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-19
下一篇2022-11-18

发表评论

登录后才能评论

评论列表(0条)

    保存