【简述】

WebService的Java实现共有三种方式:JAX-WS(JAX-RPC)、JAXM&SAAJ、JAX-RS。

JAX-WS:

  JAX-WS  的全称为 Java API for XML-Based Webservices ,早期的基于SOAP 的JAVA 的Web 服务规范JAX-RPC(Java API For XML-Remote Procedure Call)目前已经被JAX-WS 规范取代。从java5开始支持JAX-WS2.0版本,Jdk1.6.0_13以后的版本支持2.1版本,jdk1.7支持2.2版本。

【服务端工程截图】

【1.WeatherInterface.java】

编写SEI (Service Endopint Interface),SEI在WebService中称为 PortType,在Java中称为接口

【2.WetherInterfaceImpl.java】SEI实现类

【3.WeatherServer.java】

发布WebService服务

【运行服务的结果与分析】

1.运行WeatherServer.java的main方法之后,没有提示信息,只有变红的那个提示运行的标志。

2.在浏览器中输入对应的WebService的发布地址http://127.0.0.1:12345/weather

如下所示

3.验证WebService服务是否发布成功

在WebService的地址后面加“?wsdl”,查询WebService的使用说明书是否完整,如果wsdl内容完整,表示webService发布成功。

记下来进入"http://127.0.0.1:12345/weather?wsdl",如下,wsdl是XML格式的文档,我们要从下往上读:

首先,我们要找到<service>,看到了我们的接口首先Service服务名WeatherInterfaceImplService,

接着根据服务名找到对应的<binding>,可以看到其类型是WeatherInterfaceImpl

最终通过binding找到portType

portType有方法,调用WebService就是调用portType的方法。

最终找到portType,其中含有方法,说明WSDL文档基本完整。(当然也必须存在调用服务类<service>及方法)

【WSDL小结】

<service>     服务视图,WebService的服务节点,它包括了服务端点

<binding>    为每个服务端点定义消息格式和协议细节

<portType>  服务端点,描述WebService可以被执行的操作方法,以及相关消息,通过binding指向portType

<message>  定义一个操作(方法)的数据参数(可以有多个参数)

<types>       定义WebService使用的全部数据类型

04_天气查询_JAX-WS方式_服务端的更多相关文章

  1. 安装_oracle11G_客户端_服务端_链接_oracle

    在开始之前呢,有一些注细节需要注意,oracle11G_客户端_和_服务端, 分为两种   一种是  开发者使用    一种是  BDA  自己使用(同时也需要根据自己 PC 的系统来做_win7_与 ...

  2. node.js中ws模块创建服务端和客户端,网页WebSocket客户端

    首先下载websocket模块,命令行输入 npm install ws 1.node.js中ws模块创建服务端 // 加载node上websocket模块 ws; var ws = require( ...

  3. 使用rest方式修改服务端xml文件

    想法: 最近想用REST的方式去修改一个远端的xml文件,于是自己写了个Handler 设计: 用现成的XPath,和GET,POST,PUT,DELETE这4个http方法作为动作,达到直接读写xm ...

  4. Nuxt.js 提供了两种发布部署应用的方式:服务端渲染应用部署 和 静态应用部署

    官方网址:https://zh.nuxtjs.org/guide/commands/#%E5%8F%91%E5%B8%83%E9%83%A8%E7%BD%B2

  5. [并发并行]_[线程模型]_[Pthread线程使用模型之三 客户端/服务端模型(Client/Server]

    Pthread线程使用模型之三 客户端/服务端模型(Client/Server) 场景 1.在客户端/服务端模型时,客户端向服务端请求一些数据集的操作. 服务端执行执行操作独立的(多进程或跨网络)– ...

  6. TYPESDK手游聚合SDK服务端设计思路与架构之三:流程优化之订单保存与通知

    经过前两篇文字的分析与设计,我们已经可以搭建出一个能够支持多游戏多渠道的聚合SDK服务端,但这只是理想化状态下的一个简化模型.如果接入渠道的逻辑都是按照理想化的简化过程来构建,那么对于支付的请求,我们 ...

  7. .Net Mvc3框架调用服务端控件解决方案

      /*BY:Wangyexin date:2011年4月30日 20:17:38*/ /*说明:.net mvc3框架,View层调用服务端控件,输出到.cshtml文件中显示*/ 1.先说说.ne ...

  8. rsync的服务端和客户端搭建

    首先要看看有没有rsync,没有就按装一个rsync 1配置文件 然后创建rsyncd.conf文件,并添加如下内容(文件默认不存在) [root@chensiqi2 backup]# cat /et ...

  9. android菜鸟学习笔记24----与服务器端交互(一)使用HttpURLConnection和HttpClient请求服务端数据

    主要是基于HTTP协议与服务端进行交互. 涉及到的类和接口有:URL.HttpURLConnection.HttpClient等 URL: 使用一个String类型的url构造一个URL对象,如: U ...

随机推荐

  1. JAVA面试题——JAVA编程题1(2015.07.22——湛耀)

    实现代码很简单:   package com.xiaozan.shopping;   import java.util.Arrays;   public class ShoppingCart {    ...

  2. HW3.10

    public class Solution { public static void main(String[] args) { int number1 = (int)(Math.random() * ...

  3. ZOJ-3721 Final Exam Arrangement 贪心

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3721 容易的贪心题,排个序.. //STATUS:C++_AC_ ...

  4. redis在.NET下的使用

    windows SEVER包:http://code.google.com/p/servicestack/wiki/RedisWindowsDownload windows仅用来测试,性能不如在lin ...

  5. Spring BOOT PERFORMANCE

    转自:http://www.alexecollins.com/spring-boot-performance/ 官方优化文档: https://spring.io/blog/2015/12/10/sp ...

  6. ios的@property属性和@synthesize属性

    当你定义了一系列的变量时,需要写很多的getter和setter方法,而且它们的形式都是差不多的,,所以Xcode提供了@property 和@synthesize属性,@property用在 .h ...

  7. VS C# 快捷键

    解决VS2010中工具箱的的不见的问题:按快捷键Ctrl+Alt+X 全屏:Shift+Alt+Enter注释选定内容:Ctrl+E+C/Crtr+E+U代码格式化:ctrl+E+F ======== ...

  8. 【转】如何高效利用GitHub——2013-08-28 22

    http://www.yangzhiping.com/tech/github.html  正是Github,让社会化编程成为现实.本文尝试谈谈GitHub的文化.技巧与影响. Q1:GitHub是什么 ...

  9. Open quote is expected for attribute "{1}" associated with an element type "name".

    xml属性必须用引号“”,不能缺少.

  10. Enable SPI 1.0 and 1.1 with device tre overlays on BeagleBone

    For most people the above image means absolutely nothing, but for that one guy that has been searchi ...