首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >wsse的命名空间:安全性

wsse的命名空间:安全性
EN

Stack Overflow用户
提问于 2013-04-01 12:14:40
回答 1查看 4.7K关注 0票数 0

我的问题是,我试图调用一个具有Wss4jSecurityInterceptor的web服务来进行用户名密码身份验证。

生成的请求如下:

代码语言:javascript
复制
<wsse:Security
            xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
            xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
            SOAP-ENV:mustUnderstand="1">

这不起作用,但当我更改名称空间(即xmlns:wsse )时

代码语言:javascript
复制
<wsse:Security
            xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/07/secext"
            SOAP-ENV:mustUnderstand="1">

效果很好。

我想知道如何更改由代码中的<wsse:Security>标记生成的命名空间。

EN

回答 1

Stack Overflow用户

发布于 2013-04-01 15:55:25

您可以像这样扩展EndpointInterceptorAdapter并重写handleResponse方法:

代码语言:javascript
复制
@Override
public boolean handleResponse(MessageContext messageContext_, Object endpoint_) {

WebServiceMessage _webServiceMessage = messageContext_.getResponse();
SoapMessage _soapMessage = (SoapMessage) _webServiceMessage;


if (_soapMessage != null) {
SoapEnvelope _soapEnvelope = _soapMessage.getEnvelope();

if (_soapEnvelope != null) {

SoapHeader _soapHeader =_soapEnvelope.getHeader();
// modify the soapheader by casting to a DOMSource and manipulate the nodes
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15743303

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档