加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Webservice_17_客户端创建Handler,服务端接受Handler

发布时间:2020-12-17 00:11:44 所属栏目:安全 来源:网络整理
导读:客户端,创建handleMessage: @Overridepublic boolean handleMessage(SOAPMessageContext context) {Boolean flag = (Boolean) context.get(MessageContext.MESSAGE_OUTBOUND_PROPERTY);if (flag) {try {SOAPMessage message = context.getMessage();SOAPEn

客户端,创建handleMessage:

@Override
	public boolean handleMessage(SOAPMessageContext context) {
		Boolean flag = (Boolean) context
				.get(MessageContext.MESSAGE_OUTBOUND_PROPERTY);
		if (flag) {
			try {
				SOAPMessage message = context.getMessage();
				SOAPEnvelope envelope = message.getSOAPPart().getEnvelope();
				SOAPHeader header = envelope.getHeader();
				if (header == null)
					header = envelope.addHeader();

				QName name = new QName("http://soap.lichen.cn/","licenseInfo");
				header.addHeaderElement(name).setValue("client message .......");

				message.writeTo(System.out);

			} catch (SOAPException | IOException e) {
				e.printStackTrace();
			}
		}
		return true;
	}


服务端,接受handle的方法:

@Override
	public boolean handleMessage(SOAPMessageContext context) {
		Boolean flag = (Boolean) context
				.get(MessageContext.MESSAGE_OUTBOUND_PROPERTY);
		if (!flag) {
			SOAPMessage message = context.getMessage();
			try {
				SOAPEnvelope envelope = message.getSOAPPart().getEnvelope();
				SOAPHeader header = envelope.getHeader();
				if (header != null) {
					NodeList list = header.getElementsByTagName("licenseInfo");
					System.out.println(list.item(0).getTextContent());
				}
			} catch (SOAPException e) {
				e.printStackTrace();
			}
		}
		return true;
	}


?

结果,客户端控制台:

服务端:

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读