//从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. [Luogu2656]采蘑菇

    题目大意: 给你一个有向图,每条边有一个边权w以及恢复系数k, 你从s点出发乱走,经过某条边时会获得相应的收益w,而当第二次经过这条边时相应的收益为w*k下取整. 问你最大能获得的收益为多少? 思路: ...

  2. java之判断输入的数是否为素数

    import java.util.Scanner; public class TestIsSushu { public static void main(String[] args) { Scanne ...

  3. 统计个位数的数目 Exercise07_07

    /** * @author 冰樱梦 * 时间:2018年下半年 * 题目:统计个位数的数目 * */ public class Exercise07_07 { public static void m ...

  4. 检测是否为n的因子 Exercise07_06

    /** * @author 冰樱梦 * 时间:2018年下半年 * 题目:检测是否为n的因子 * */ public class Exercise07_06 { public static void ...

  5. Problem E: 深入浅出学算法019-求n的阶乘

    Problem E: 深入浅出学算法019-求n的阶乘 Time Limit: 1 Sec  Memory Limit: 64 MBSubmit: 5077  Solved: 3148 Descrip ...

  6. bootstrap中日历组件只显示年月

    大多数情况下日历组件我们使用的都是yyyy-mm-dd的日历格式,但是有时候需求不需要我们精确到日,而是最小单位到月份(yyyy-mm),网上找了很多方法,但是都没有我想要的效果,一些属性的设置都没有 ...

  7. mysqldumper

    介绍 MySQL自身的mysqldump工具支持单线程工作,依次一个个导出多个表,没有一个并行的机,这就使得它无法迅速的备份数据. mydumper作为一个实用工具,能够良好支持多线程工作,可以并行的 ...

  8. Eclipse错误导致无法启动The workspace exited with unsaved changes in the previous session

    MyOpenSUSE:/home/jin/workspace # tail -f .metadata/.log !SESSION 2014-05-04 11:35:58.869 ----------- ...

  9. [Bug]The test form is only available for requests from the local machine.

    引言 当您尝试从远程计算机访问 Web 服务时,不会显示“调用”按钮.并且,您会收到以下错误信息: The test form is only available for requests from ...

  10. AS3.0 Vector的运用

    使用Vector类编程 一个array(数组)就像是把一套变量组织在一起的容器.单个数组可以含有许多不同的值.你可以储存和取得数组中的单个值(也就是数组elements(元素)).你也可以通过直接操作 ...