java 解析webservice 中的soapheader
2014-03-13 11:10
357 查看
//从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>
相关文章推荐
- Xfire soapHeader的WebService权限控制forjava
- cxf发布webservice与java客户端解析webservice
- Webservice的wsdl文件解析与Soap消息的发送、接收(不生成java客户端代码)
- JAVA调用.NET WebService终极方案(包含对SoapHeader的处理)
- java调用webservice天气预报(SOAP请求的方式获取天气信息并解析返回的XML)
- Java调用带SoapHeader头验证的.net Webservice示例代码
- Java调用C#带soapheader的webservice接口
- .net调用java xfire发布的webservice封装soapheader头信息
- java调用webservice并解析json字段
- java版的webservice,完全用java的正则表达式对websercice的xml进行解析,可以很快用到web中,只需要调用其中的封装好的方法
- Java接收Cordys中webservice接口的返回数据并解析xml获取相应节点数据
- C#访问Java的WebService添加SOAPHeader验证的问题
- java使用POST发送soap报文请求webservice返回500错误解析
- Java使用SOAP获取webservice实例解析
- java soap webservice(含有SoapHeader)
- Java使用SOAP获取webservice实例解析
- java调用webservice天气预报(SOAP请求的方式获取天气信息并解析返回的XML)
- JAVA调用返回XML格式数据的WebService,并通过XPath解析XML的应用
- java WebService接口开发注意点 java 利用Xstream生成和解析xml知识结构
- # C# 调用java的WebService添加SOAPHeader验证