一、开发webservice接口的方式

1、jdk开发。

2、使用第三方工具开发,如cxf、shiro等等。

我这边介绍jdk方式webservice接口调用。

二、使用jdk调用webservice接口

1、选中项目 -> 右键 -> new -> othert -> 找到web service client 打开-> next -> 在wsdl url 输入 接口地址(格式:http://www.webxml.com.cn/WebServices/TranslatorWebService.asmx?wsdl) -> next.... -> 生成类文件。

生成类文件就完成了。

2、调用过程:

 package ww;

 import java.util.List;

 import cc.ArrayOfString;
import cc.TranslatorWebService;
import cc.TranslatorWebServiceSoap; public class cccd { public static void main(String[] args) {
// TODO Auto-generated method stub
TranslatorWebServiceSoap as = new TranslatorWebService().getTranslatorWebServiceSoap();
String aw = as.helloWebXml();
System.out.println(aw);
List<String> ss = as.getEnCnTwoWayTranslator("dog").getString();
System.out.println(ss.toString());
} }

结果:

或则用cmd命名得到

wsimport -s G:\\workspace\\webService\\TheClient\\src -p com.hyan.client -keep http://localhost:9001/Service/ServiceHello?wsdl

三、杂谈:

A:关于jax-ws、jax-rs的区别

    JAX-WS是针对WebService。而JAX-RS是针对RESTful HTTP Service。

    可以说这是两种风格的SOA架构风格:

    前者以动词为中心,指定的是每次执行函数,大力支持的厂商如BEA,IBM,MS基本都是开发工具厂商,没有开发工具来做WebService简直不是人干的活,呵呵)

    后者以名词为中心,每次执行的时候指的是资源,大力支持的厂商如Google,Yahoo,亚马孙等都是服务运营厂商,实在是REST简洁好用,又能满足绝大部分需求)。

    JAX-WS是面向消息的,每次请求的时候指定了请求的方法。JAX-RS是面向资源的。后则将网络上的东西当做一种资源,每次请求都是对该资源进行操作,比如对资源的

  增删查改。

    在网上看到这么一句话:JAVA 中共有三种WebService 规范,分别是JAXM&SAAJ、JAX-WS(JAX-RPC)、JAX-RS。我暂时不清楚他们能不能叫做webservice服务规

  范,而且这个服务规范是什么意思?

  http://blog.csdn.net/bapinggaitianli/article/details/46518705

B:可能遇到问题及解决方案

(1)项目在编译时报错:

    Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commous/httpclient/methods/RequestEntity

  则需要下载Apachehttpclient开发包,然后将commons-httpclient-3.1-rc1.jar添加到工程中。

  下载地址 - http://jakarta.apache.org/site/downloads/downloads_commons-httpclient.cgi

  发行注记 - http://www.apache.org/dist/jakarta/commons/httpclient/RELEASE-NOTES.txt

(2)生成的代理类中如果出现以下错误:

    Syntax error,annotations are only available if source level is 5.0

    解决办法:Project->JavaCompiler->Compiler Compliance Level->Select "5.0" or Higher

              Project->Java Build Path->Libraries->Add Library...->JUnit->Select "JUnit 4.0"->Finish

    经过以上设置后可顺利解决问题。


http://blog.csdn.net/qq_20545159/article/details/47903513    一些用于测试用的webservice接口。

Webservice接口的调用的更多相关文章

  1. 用Python写WebService接口并且调用

    一.用ladon框架封装Python为Webservice接口 另用soaplib实现请看:    http://www.jianshu.com/p/ad3c27d2a946 功能实现的同时,希望将接 ...

  2. 用ladon框架封装Python为Webservice接口以及调用接口的方法

    一.用ladon框架封装Python为Webservice接口 功能实现的同时,希望将接口开放给别人,而封装python接口的一个再简单不过的框架Ladon,而且提供不同的协议,包括SOAP和Json ...

  3. php中创建和调用webservice接口示例

    php中创建和调用webservice接口示例   这篇文章主要介绍了php中创建和调用webservice接口示例,包括webservice基本知识.webservice服务端例子.webservi ...

  4. java调用CXF WebService接口的两种方式

    通过http://localhost:7002/card/services/HelloWorld?wsdl访问到xml如下,说明接口写对了. 2.静态调用 // 创建WebService客户端代理工厂 ...

  5. java获取https网站证书,附带调用https:webservice接口

    一.java 获取https网站证书: 1.创建一个java工程,新建InstallCert类,将以下代码复制进去 package com; import java.io.BufferedReader ...

  6. php中调用WebService接口

    一.背景 调用第三方短信提供商的WebService接口. 二.介绍 1.WebService三要素: SOAP(Simple Object Access Protocol) 用来描述传递信息的格式 ...

  7. Java调用webservice接口方法

                             java调用webservice接口   webservice的 发布一般都是使用WSDL(web service descriptive langu ...

  8. 使用soapui调用webservice接口

    soapui是专门模拟调用webservice接口的工具,下面介绍下怎么使用: 1.下载soapui并安装: 2.以免费天气获取接口为例:http://www.webservicex.net/glob ...

  9. loadrunner做webservice接口之简单调用

    今天听大神讲了webservice做接口,我按照他大概讲的意思自己模拟实战了下,可能还有很多不对,一般使用webservice做接口,会使用到soapui,但是用了loadrunner以后发现lr很快 ...

随机推荐

  1. 软件测试管理QC

    一.QC简介 1)是HP公司的产品,是B/S结构的产品 2)在QC服务器中,打开IE浏览器,在地址栏中输入QC服务器的网址或者IP地址. 查看虚拟机的IP地址: 本地连接-属性-TCP/IP协议(重点 ...

  2. c语言贪吃蛇详解1.画出地图

    c语言贪吃蛇详解-1.画出地图 前几天的实验室培训课后作业我布置了贪吃蛇,今天有时间就来写一下题解.我将分几步来教大家写一个贪吃蛇小游戏.由于大家c语言未学完,这个教程只涉及数组和函数等知识点. 首先 ...

  3. webpack构建项目

    webpack构建项目 案例代码戳这里 ps:每个案例对应相应的demo,例如"案例1"对应"demo1" 一.webpack基本功能及简单案例 安装webpa ...

  4. 51nod 1058 N的阶乘的长度 位数公式

    1058 N的阶乘的长度基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3.Input输入N( ...

  5. KD-tree详解

    转载自:http://blog.csdn.NET/zhjchengfeng5/article/details/7855241 首先来一个问题: 给定平面上一个点集 E ,还有一个定点 V ,怎么在一群 ...

  6. 高质量PHP代码的50个实用技巧必备(上)

    1.不要使用相对路径 常常会看到: ? 1 require_once('../../lib/some_class.php'); 该方法有很多缺点: 它首先查找指定的php包含路径, 然后查找当前目录. ...

  7. 关于C++编译链接和模板函数

    一,关于编译链接编译指的的把编译单元生成目标文件的过程链接是把目标文件链接到一起的过程编译单元:可以认为是一个.c或者.cpp文件.每个编译单元经过预处理会得到一个临时的编译单元.预处理会间接包含其他 ...

  8. jqgrid嵌套子表格

    jqgrid的subGrid子表格 jqGrid的一项高级功能就是嵌套子表格,使用起来也非常简单.使用的方式有两种: 使用普通的subGrid子表格: 使用一个完整jqGrid作为子表格: 1.选项含 ...

  9. Model中内部类meta详解

    Django 模型类的Meta是一个内部类,它用于定义一些Django模型类的行为特性. 以下对此作一总结: Model 元数据就是 "不是一个字段的任何数据" -- 比如排序选项 ...

  10. 简单了解Markdown

    在Github的readme.md文件的编辑中,開始渐渐的接触Markdown.如今简单系统叙述一下Markdown的语法. Markdown是一种能够使用普通文本编辑器编写的标记语言.通过类似HTM ...