java - 从消息响应中删除 soap header

标签 java web-services soap cxf

如何删除

<soapenv:Header xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">

使用 Java(或 Web 服务配置)从响应消息中提取节点?

我不想发回 header 中显示的用户名和密码。我是否创建一个类来扩展 AbstractSoapInterceptor

我正在使用 `cxf 总线来配置我的网络服务。

最佳答案

我不知道您是如何接收 SOAP 消息的,但是如果您可以使用(或实例化)javax.xml.soap.SOAPMessage,则可以删除令人头疼的 header 元素或属性你:

// Removes the attribute "key" from the message header
message.getSOAPHeader().removeAttribute("key");

无论如何,重复使用相同的消息对我来说听起来很奇怪,也许你应该考虑创建一个新的新响应消息:

这条语句创建了一个全新的消息:

MessageFactory mf = MessageFactory.newInstance();
SOAPMessage message = mf.createMessage(headers, in)

这个,来自 Mime header 和输入流:

MessageFactory mf = MessageFactory.newInstance();
SOAPMessage message = mf.createMessage(headers, in)

关于java - 从消息响应中删除 soap header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29685117/

相关文章:

JavaFx textfield.setText() 方法不起作用

Gridpane 中的 JavaFx 图像显着降低性能

java - (Java) 同时发布 Web Service Endpoint 和 Http Server?

java - 休息 - 如何获取调用者的 IP 地址

node.js - 出现错误 : getaddrinfo ENOTFOUND when using node-soap

使用 REST 或 SOAP 的 Magento 商店的 Android 应用程序?

java - JPanel.getWidth() 不准确。为什么?

java - kSOAP2:在 Java 中将任何类型转换为复杂类型

java - 为 Tomcat 配置 SOAP - 请求总是被拒绝 (403)

java - Android 应用程序启动缓慢,但启动缓慢后运行良好