//从MessageContet中获取头域中的值
public HeaderBean getBeanFromRequest(org.apache.axis2.context.MessageContext msgContext)
{
HeaderBean headerBean = new HeaderBean();
org.apache.axiom.soap.SOAPHeader headers = (org.apache.axiom.soap.SOAPHeader)msgContext.getEnvelope().getHeader();
Iterator iterator = headers.getChildElements();
try
{
while(iterator.hasNext())
{
OMElement omheader = (OMElement) iterator.next();
if (omheader == null)
{
break;
}
else if ("MessageID".equals(omheader.getLocalName()))
{
String MessageID = omheader.getText().trim();
headerBean.setMessageID(MessageID);
/*System.out.println((new StringBuilder())
.append("notifyParticipantState : MessageID --> ")
.append(MessageID).toString());*/
}
else if ("MEName".equals(omheader.getLocalName()))
{
String MEName = omheader.getText().trim();
headerBean.setmEName(MEName);
/*System.out.println((new StringBuilder())
.append("notifyParticipantState : MEName --> ")
.append(MEName).toString());*/
}
else if ("Authentication".equals(omheader.getLocalName()))
{
String Authentication = omheader.getText().trim();
Iterator authIterator = omheader.getChildElements();
System.out.println((new StringBuilder())
.append("notifyParticipantState : Authentication --> ")
.append(Authentication).toString());
while(authIterator.hasNext())
{
OMElement omlement = (OMElement) authIterator.next();
if (omlement == null)
{
break;
}
else if ("Username".equals(omlement.getLocalName()))
{
String userName = omlement.getText().trim();
headerBean.setUsername(userName);
/*System.out.println((new StringBuilder())
.append("notifyParticipantState : Username --> ")
.append(Username).toString());*/
}
else if ("Password".equals(omlement.getLocalName()))
{
String password = omlement.getText().trim();
headerBean.setPassword(password);
/*System.out.println((new StringBuilder())
.append("notifyParticipantState : Password --> ")
.append(Password).toString());*/
}
}
}
}
}
catch(Exception ex)
{
ex.printStackTrace();
} return headerBean;
}

header头消息如下:

 <soapenv:Header xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<mgr:MessageID xmlns:mgr="http://mgr.soap.boss.bmp.ecs.huawei.com.MEDIAX">123</mgr:MessageID>
<mgr:MEName xmlns:mgr="http://mgr.soap.boss.bmp.ecs.huawei.com.MEDIAX">123</mgr:MEName>
<mgr:Authentication xmlns:mgr="http://mgr.soap.boss.bmp.ecs.huawei.com.MEDIAX">
<mgr:Username>test</mgr:Username>
<mgr:Password>test</mgr:Password>
</mgr:Authentication>
</soapenv:Header>

java 解析webservice 中的soapheader的更多相关文章

  1. Java - 在WebService中使用Client调用三方的RestAPI

    背景 近期,由于项目的要求需要在自己的webservice中调用远程的WebAPI(Restful format).自己的webservice程序是用Java编码写的,所以需要在其中实现一个Clien ...

  2. java解析邮箱中的邮件信息

    import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; import ...

  3. C#访问Java的WebService添加SOAPHeader验证的问题

    原文:C#访问Java的WebService添加SOAPHeader验证的问题 这两天做与公司OA的接口,发现C#访问Java的WebService需要提供一个SOAP的头验证信息,但是WebServ ...

  4. MAXIMO系统 java webservice 中PDA移动应用系统开发

    MAXIMO系统 java webservice 中PDA移动应用系统开发  平时经常用的wince PDA手持设备调用c#写的webservice, 当然PDA也可以调用java webservic ...

  5. Java解析OFFICE(word,excel,powerpoint)以及PDF的实现方案及开发中的点滴分享

    Java解析OFFICE(word,excel,powerpoint)以及PDF的实现方案及开发中的点滴分享 在此,先分享下写此文前的经历与感受,我所有的感觉浓缩到一个字,那就是:"坑&qu ...

  6. Java解析word,获取文档中图片位置

    前言(背景介绍): Apache POI是Apache基金会下一个开源的项目,用来处理office系列的文档,能够创建和解析word.excel.ppt格式的文档. 其中对word文档的处理有两个技术 ...

  7. C#调用Java的WebService添加SOAPHeader验证(2)

    C#调用Java的WebService添加SOAPHeader验证 上一篇链接如上,更像是 Net下采用GET/POST/SOAP方式动态调用WebService的简易灵活方法(C#) 来处理xml, ...

  8. C#调用Java的WebService添加SOAPHeader验证

    C#调用Java的WebService添加SOAPHeader验证(2) 1.问题描述 调用的Java的webservice string Invoke(string func, string req ...

  9. java获取request中的参数、java解析URL问号后的参数

    java获取request中的参数.java解析URL问号后的参数.有时候我们需要从request中获取参数,或者获取拼接在Url后面的参数,有时候一个一个去拿有点麻烦,一起拿出来放在一个map里面需 ...

随机推荐

  1. Problem X: 双层金字塔

    #include<stdio.h> int main() { int i,j,n,m; while(scanf("%d",&n)!=EOF) { ;i<= ...

  2. 推荐系统中的SVD

    本文主要参考:Factorization Meets the Neighborhood: a Multifaceted Collaborative Filtering Model 在用户对自己需求相对 ...

  3. insert失败自动执行update(duplicate先insert)

    例如:有一张表 字段有  id主键自增,或者唯一索引:datetime时间  name名字 INSERT INTO TABLE (id,datetime) VALUES (1,1440000000), ...

  4. 一个简单的MVC模式练习

    控制层Action接受从模型层DAO传来的数据,显现在视图层上. package Action; import java.sql.Connection; import java.sql.SQLExce ...

  5. Toad 常用快捷键

    F9             执行全部sql                Ctrl_Enter     执行当前sql                Ctrl+T     补全table_name  ...

  6. Xcode8从相册选图片

    使用Xcode8写自己的东西有一段时间了,在使用Xcode8编程时不得不说我特别喜欢改后的默认字体,哈哈,当然默认字体是可以调回去的,只不过默认的字体感觉看起来比以前舒服了,毕竟不会像之前那么”字正腔 ...

  7. git log --oneline --graph的读法

    星号表明这个提交所在的分支: 最左边的直线表示当前分支的历史状态,从图看,当前分支HEAD是master分支 :提交历史是:8cfbb25<--d486463<--a88c595<- ...

  8. python的globals()使用

    使用命令pyrasite-shell pid,可以与进程进行shell交互,获取,在shell里执行globals(),可以获取整个进程的全部全局变量,比如django应用.flask应用的变量,而不 ...

  9. Swift 版本号非常好的卡片切换效果基于ZLSwipeableView(相似于[陌陌点点][探探])

    这是我在简书的文章. http://www.jianshu.com/p/734962c9bbed

  10. Vuex内容解析和vue cli项目中使用状态管理模式Vuex

    中文文档:vuex官方中文网站 一.vuex里面都有些什么内容? const store = new Vuex.Store({ state: { name: 'weish', age: }, gett ...