简单的webservice发布和测试
eclipse发布
参考:http://www.cnblogs.com/cherxu/p/5179053.html
很简单,接口写好后,打个war包放到tomcat里面跑起来;
本例采用axis来测试;
发布好后,写一个简单的测试方法。
在eclipse里面新建一个动态web工程
写一个测试类TestWS,代码如下:
package com.enfo.testws;
import javax.xml.namespace.QName;
import javax.xml.rpc.ParameterMode;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
public class TestWS {
public static void main(String[] args) {
try{ //ip端口/ws项目名/services/接口方法所在类名,也可以在地址后面加上?wsdl
String endpoint = "http://127.0.0.1:8080/LoginService/services/LogonService";
Service service = new Service(); //新建一个axis的service对象
Call call = (Call)service.createCall();//通过service新建一个axis的call对象
call.setTargetEndpointAddress(endpoint);//设置call要访问的地址
/**QName命名空间,http://ws.enfo.com,打开http://127.0.0.1:8080/LoginService/services/LogonService?wsdl
*可以看到页面上显示成xml格式,里面有命名空间信息targetNamespace="http://ws.enfo.com"
*ws.enfo.com其实就是接口类所在的包名:src下的com.enfo.ws
*/
call.setOperationName(new QName("http://ws.enfo.com","hello"));//http://service.enfo.com是给接口地址随便设置的一个命名,hello是要调用的ws接口方法名
call.addParameter(new QName("http://ws.enfo.com","name"), org.apache.axis.Constants.XSD_STRING, ParameterMode.IN);//设置ws方法的参数对应的参数类型等信息
//call.addParameter(new QName("http://ws.enfo.com","password"), org.apache.axis.Constants.XSD_STRING, ParameterMode.IN);
call.setReturnClass(String.class);//设置ws方法返回的值的类型;注意:如果方法中返回的是int,这里也可以设置成String.class
//以上先创建call对象,再设置要访问接口的地址,给要执行的方法设置命名,给方法设置参数类型,设置返回类型
String name="taptqqqqq"; //设置要传到接口的参数
String ret =(String)call.invoke(new Object[] {name});//调用call的invoke方法访问接口,将设好的参数传过去,得到接口返回值
System.out.println("发送的是:"+name);
System.out.println("返回的是:"+ret);
}catch(Exception e){
System.err.println(e.toString());
}
}
}
测试方法相关jar包:axis.jar,commons-discovery-0.2.jar,commons-logging.jar,jaxrpc.jar,saaj.jar,webserviceutils.jar,
wsdl4j.jar,补充:activation-1.1.jar,mail.jar
下载地址:
https://pan.baidu.com/s/1nvLXMIX
简单的webservice发布和测试的更多相关文章
- eclipse安装Axis2插件和简单的webservice发布
2019独角兽企业重金招聘Python工程师标准>>> Axis2与CXF是现在很主流的WebService开发框架(java6也已经支持了),项目上还都是基本上用前两种做开发,今天 ...
- 使用VS2010创建WebService 发布、测试
http://blog.sina.com.cn/s/blog_45eaa01a0102vopl.html 1 打开VS2010,菜单 文件->新建->项目 2 选择[ASP.net ...
- Webservice发布出现 测试窗体只能用于来自本地计算机的请求
今天发布了一个接口,一开始以为是.netframework版本的问题,从3.5降到2.0到服务器发布,发布后还是会出现 测试窗体只能用于来自本地计算机的请求 上网查找资料发现原来是 webconfig ...
- 利用VS2008发布一个简单的webservice
一个开发好的webservice,怎样发布出去,供其他电脑访问呢? 本文将介绍如何发布一个简单的webservice,其中的内容都是在网上查看别人文章,自己仿照着做了一遍,因此,难免会发生错误,如果发 ...
- Web Service 的创建简单编码、发布和部署
最近,老大准备将已有的C/S架构项目中的通信部分做成通用,需要将其支持WebService为以后项目向着B/S架构升级做好铺垫,为此身为屌丝的我去各种百度WebService是个什么卵玩意,然后逐渐搭 ...
- 一个简单的Webservice的demo,简单模拟服务
前段时间一直在学习WCF,匆匆忙忙的把<WCF全面解析>和<WCF服务编程>看了一遍,好多东西都不是很懂,又听了一下WCF分布式开发的网络教程,算是马马虎虎的明白点了.回顾了一 ...
- 利用Java编写简单的WebService实例-转载
使用Axis编写WebService比较简单,就我的理解,WebService的实现代码和编写Java代码其实没有什么区别,主要是将哪些Java类发布为WebService.下面是一个从编写测试例子到 ...
- 一个简单的Webservice的demo(中)_前端页面调用
首先新建项目,这里有两种调用方式,为了能方便理解,新建页面WebserviceTest如下图: 先引用写好的服务,这里用上次写好的服务.见上次写的一个简单的Webservice的demo,简单模拟服务 ...
- axis2 webservice 发布、调用与项目集成
发布 1.在apache官网下载axis2包,下载Binary Distribution和War Distribution两个zip. 2.将war放入tomcat webapps下部署.并输入 ht ...
随机推荐
- codeforces Gym 100338H High Speed Trains (递推,高精度)
递推就好了,用二项式定理算出所有连边的方案数,减去不合法的方案, 每次选出一个孤立点,那么对应方案数就是上次的答案. 枚举选几个孤立点和选哪些,选到n-1个点的时候相当于都不选,只减1. 要用到高精度 ...
- java里面byte数组和String字符串怎么转换
//string 转 byte[] String str = "Hello"; byte[] srtbyte = str.getBytes(); // byte[] 转 strin ...
- Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.Reason: Failed to determine a suitable driver class
解决方案: @SpringBootApplication(exclude = DataSourceAutoConfiguration.class) 作用://取消数据库配置 但是 在用到数据库的时候记 ...
- firstElectron_web5 安装
小娜 搜 cmd 右键 管理员运行 1.装全局 这样 不用每次都下载 因为包挺大的 还有用cnpm 要不太慢 cnpm install electron --save-dev --save-exact ...
- vscode 插件整理
己亥年 庚午月 癸巳日 宜入宅 忌婚嫁 1.Chinese (Simplified) Language Pack for Visual Studio Code 此中文(简体)语言包为 VS Cod ...
- PAT (Basic Level) Practise (中文)-1025. 反转链表 (25)
PAT (Basic Level) Practise (中文)-1025. 反转链表 (25) http://www.patest.cn/contests/pat-b-practise/1025 ...
- shell脚本,计算学生分数的题目。
1.计算学生平均分数的值是多少? 2.计算每门课都大于80分的学生姓名.3.计算每门课都小于90分的学生姓名.
- 随机生成一份试卷,试卷的种类分为单选、多选、判断三种题型。nodejs6.0 mysql
背景:从数据库中,随机生成一份试卷,试卷的种类分为单选.多选.判断三种题型. 首先我需要生成随机数id(在这之前我需要知道数据库中各个题型的题数,这样我才能设置随机数),并依据生成的随机数id,去查找 ...
- OS复习
提纲 一 操作系统的定义,各章节名词定义. 分时多道- OS四大特征,五大功能. 二 进程 创建终止挂起激活 PCB 原语:创建终止挂起激活唤醒 互斥和同步,临界资源,临界区 信号量的基础概念,受保护 ...
- [LUOGU] P2196 挖地雷
题目背景 NOIp1996提高组第三题 题目描述 在一个地图上有N个地窖(N<=20),每个地窖中埋有一定数量的地雷.同时,给出地窖之间的连接路径.当地窖及其连接的数据给出之后,某人可以从任一处 ...