一、开发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. gdb的多线程调试

    info threads 可以查看当前进程有哪些线程 thread ID 可以切换到线程ID bt 查看当前线程堆栈 set scheduler-locking on多线程调试过程中, 线程会来回切换 ...

  2. Windows Intellij环境下Gradle的 “Could not determine Java version from ‘9.0.1’”的解决方式

    当我导入Gradle项目初试Java spring的时候,遇到下面报错: Gradle complete project refresh failed Error:Could not determin ...

  3. Float精度丢失

    BigDecimal _0_1 = new BigDecimal(0.1); BigDecimal x = _0_1; for(int i = 1; i <= 10; i ++) { Syste ...

  4. linux安装redis(转)

    一.Redis介绍 Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多 ...

  5. Java并发编程总结4——ConcurrentHashMap在jdk1.8中的改进

    一.简单回顾ConcurrentHashMap在jdk1.7中的设计 先简单看下ConcurrentHashMap类在jdk1.7中的设计,其基本结构如图所示: 每一个segment都是一个HashE ...

  6. JWT.NET的使用

    JWT是什么 JWT全称是Json Web Token,是一种用于双方之间传递安全信息的简洁的.URL安全的表述性声明规范.JWT作为一个开放的标准( RFC 7519 ),定义了一种简洁的,自包含的 ...

  7. 选择客栈noip2011

    哈,没想到吧.今天居然有两篇(算什么,厕所读物吗 选择客栈 本题的更优解请跳转zt 这题11年,刚改2day. 对于30% 的数据,有 n ≤100: 对于50% 的数据,有 n ≤1,000: 对于 ...

  8. 关于C语言中static保留字的使用

             static存储类型可以用于全部变量,无需考虑变量声明的位置.但是作用于块外部和块内部时具有不同的作用.         (1)当作用于函数内部时,和每次程序离开所在块就会丢失值的自 ...

  9. LDA数学八卦笔记(一)Gamma函数

    Technorati Tags: LDA主题模型

  10. 网络基础之 OSI七层模型

    OSI七层模型模型图如下: 前三层(应用层,表示层,会话层)=>给用户提供服务. 后四层(传输层,网络层,数据链路层,物理层)=>数据传递提供服务. 其中 数据链路层中MAC地址负责局域网 ...