1、webservice实验报告Webservice课程设计报告1手机号码归属地服务(一)WSDL文档:-1.Types - 数据类型定义的容器,它使用某种类型系统(一般地使用XML Schema中的类型系统)。2.当elementFormDefault=qualified 时,所有全局元素的子元素将被以缺省方式放到目标命名空间,但是全局元素或者类型将被放到目标命名空间3.authkey设置的参数可通过url登录,免费网站设置为空。4.该部分抽象定义了四个元素, GetMobileOwnership、 GetMobileOwnershipResponse、ResultOfMobileOwnersh
2、ip、MobileOwnership5.GetMobileOwnership定义了一个复杂类型,其中包含两个字符串,用来描述操作的参入传入部分。6.GetMobileOwnershipResponse:定义了一个复杂类型,包含了一个ResultOfMobileOwnership类型的数据,将来用来描述操作的返回值。7.ResultOfMobileOwnership:定义了一个复杂类型,包含了一个int数据返回http状态码,一个string数据返回是否请求成功,一个MobileOwnership数据返回手机号码各项信息。8.MobileOwnership:定义了一个复杂类型,包含五个字符串。
3、plex和element映射到元素方式是不同的,type需要定制类型映射来处理complex类型,element则不需要。plexType 元素定义了一个复杂类型。如果一个元素有属性和或子元素,那么就认为该元素的类型是复杂类型。DVD 类型既有属性又有子元素。元素的子元素可以遵循三种模型:any、choice 和 sequence。类型 any 意味着任何嵌套内容都可以以任何顺序显示成父节点的子节点。类型 choice 意味着只可以使用一组可能的子元素中的一个。最后,sequence 意味着子元素在父元素中的显示顺序必须和它们在 sequence 元素中的顺序相同。- - - - - - 1.
4、message标签:方法的输入输出参数都用一个消息来表示,message标签表示一个这样的消息,message标签按下面有个part标签,用来具体指示这个消息在schema中的类型,类型以element形式表现出来,即part标签的element属性指定的那个element。对于输入参数消息,part标签的element属性命名同webmethod方法名。对于输出参数消息,part标签的element属性命名同webmethod方法名+ response。表示类型的element都被集中放置在types标签内。2.抽象定义了六个消息GetMobileOwnershipSoapIn、GetMob
5、ileOwnershipSoapOut、 GetMobileOwnershipHttpGetIn、GetMobileOwnershipHttpGetOut、GetMobileOwnershipHttpPostIn、GetMobileOwnershipHttpPostOut3.GetMobileOwnershipSoapIn,GetMobileOwnershipHttpGetIn,GetMobileOwnershipHttpPostIn方法输入消息类型,对应到schema的element,这个element会在wsdl:types标签中描述。4.GetMobileOwnershipSoapOut
6、,GetMobileOwnershipHttpGetOut,GetMobileOwnershipHttpPostOut方法输入消息类型,对应到schema的element,这个element会在wsdl:types标签中描述。- 手机归属地 - 手机归属地 - 手机归属地 1.portType标签用来描述整个的webservices,portType的name属性即为这个web services类的类名。这个标签下包含了所有的可用方法,每个operation标签表示一个方法。2.portType元素和operation元素类似于java接口和接口中定义的方法声明。operation元素使用一个
7、或者多个message类型来定义他的输入和输出的有效负载。3.该操作是一个请求响应模式,请求消息是前面定义的GetMobileOwnershipSoapIn、GetMobileOwnershipHttpGetIn、GetMobileOwnershipHttpPostIn。响应消息是前面定义的GetMobileOwnershipSoapOut、GetMobileOwnershipHttpGetOut、GetMobileOwnershipHttpPostOut。4.Input和output标签分别表示一个operation(webmethod方法)的输入和输出的参数集合,这里叫做消息,不管输入参数
8、有几个,每 个参数有多么复杂,只有一个表示这些输入参数的消息,就是input标签的message属性表示的那个消息。对于输出消息也一样。- - soap:operation style=document soapAction=- - - - soap12:operation style=document soapAction=- - - - - - - - - - 1.Binding元素将portType元素和operation元素赋给一个特殊的协议和编码样式。2.这段xml定义的操作使用的是SoapDocumentProtocol消息格式(style=document)。输入和输出参数格式都
9、是“Literal”(use=literal)- soap:address location= - soap12:address location= - http:address location= - http:address location= 1.service:service 定义了某个特定绑定(binding)的连接信息。服务可以有一个或多个端口,每个端口都定义一个不同的连接方法(例如 HTTP / SMTP 等等)。2.service-相关port元素的集合,用户组织endpoint定义。port-通过binding和物理地址定义的endpoint,这个元素将所有抽象定义聚集在一起
10、。3.这部分是具体的Web服务的定义,在这个名为MobileService的Web服务中,提供了一个服务访问入口,访问地址是(2)创建java客户端 主要代码如下:public class MobilePhone public static void main(String args) MobileService service=new MobileService(); MobileServiceSoap port=service.getMobileServiceSoap(); System.out.println(请输入号码n); Scanner sc = new Scanner(Syste
11、m.in); String a = sc.nextLine(); ResultOfMobileOwnership result = port.getMobileOwnership(a,8a139c9597ce498380fcea89d5d2723c ); /userid一天一更新 MobileOwnership data = result.getData(); System.out.print(省份: +data.getProvince()+ n); System.out.print(城市: +data.getCity()+ n); System.out.print(运营商:+data.getCorp()+ n); 效果如下(3)创建网页客户端主要代码如下:index.jsp: JSP Page 查询结果 p
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1