您当前的位置: 首页 > 

宝哥大数据

暂无认证

  • 0浏览

    0关注

    1029博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Webservice05---SOAP消息的分析和创建

宝哥大数据 发布时间:2017-10-14 07:06:38 ,浏览量:0

一、SOAP消息操作 1.1、soap消息

这里写图片描述

1.2、soap消息的结构

这里写图片描述

1.3、soap消息创建 1.3.1、
@Test
    public void testIn01() {//测试输入
        try {
            //1、创建消息工厂, 单例模式
            MessageFactory factory = MessageFactory.newInstance();
            //2、根据消息工厂创建SOAPmessage
            SOAPMessage message = factory.createMessage();
            //3、创建SOAPprot
            SOAPPart part = message.getSOAPPart();
            //4、获取信封Envelope
            SOAPEnvelope envelope = part.getEnvelope();
            //5、通过SOAPEnvolope 创建header, 以及body
            SOAPBody body = envelope.getBody();
            //6、根据QName创建相应的节点,(QName 就是一个带有命名空间的节点。)
        } catch (SOAPException e) {
            e.printStackTrace();
        }
    }
1.3.2、根据QName创建相应的节点,(QName 就是一个带有命名空间的节点。) 1.3.2.1、在服务创建是使用过QName
package com.chb.service;

import java.net.MalformedURLException;
import java.net.URL;

import javax.xml.namespace.QName;
import javax.xml.ws.Service;

public class TestClient {
    public static void main(String[] args) throws MalformedURLException {
        //根据提供URL, 访问指定接口
        URL url = new URL("http://localhost:9999/ns?wsdl");

        //QName qName = new QName(namespaceURI, localPart)
        //targetNamespace="http://service.chb.com/" name="MyServiceImplService">  
        //根据wsdl获取namespaceURI, 以及localport
        QName qName = new QName("http://service.chb.com/", "MyServiceImplService");
        //创建服务
        Service service = Service.create(url, qName);
        //通过service来创建接口
        IMyService iMyService = service.getPort(IMyService.class);
        System.out.println(iMyService.add(12, 34));
    }
}   
QName qName = new QName("http://service.chb.com/", "MyServiceImplService"); 实际创建一个命名空间
关注
打赏
1587549273
查看更多评论
0.0460s