用Eclipse+axis2+tomcat进行web service部署

2016-12-07

目录 

1 安装JDK
  1.1 下载JDK
  1.2 安装和配置JDK
  1.3 验证
2 安装Eclipse
  2.1 下载Eclipse
  2.2 安装
3 安装Tomcat
  3.1 下载Tomcat
  3.2 安装及配置
  3.3 验证
4 安装axis2
  4.1 下载axis2
  4.2 在tomcat中部署axis2
  4.3 在eclipse中配置axis2
5 建立要发布的Web Service
6 发布Web Service
7 编写客户端代码调用WebService

参考

1 安装JDK


返回

1.1 下载JDK

JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

1.2 安装和配置JDK

  1. 安装目录尽量不要有空格  D:\Java\jdk1.8.0_91; D:\Java\jre8
  2. 设置环境变量: “我的电脑”->右键->“属性”->”高级系统设置”->"新建系统变量"
    JAVA_HOME:D:\Java\jdk1.8.0_91
    Path: %JAVA_HOME%\bin
  3. 重启计算机

1.3 验证

验证一下是否搭建成功 打开CMD,输入: java -version

2 安装Eclipse


返回

2.1 下载Eclipse

下载地址: https://www.eclipse.org/downloads/packages/release/Indigo/SR2,下载“Eclipse IDE for Java EE Developers”

2.2 安装

解压即可使用。这里解压到 D:\Program Files\eclipse-jee-indigo-SR2-win32-x86_64\

3 安装Tomcat


返回

3.1 下载Tomcat

下载地址: http://tomcat.apache.org/download-70.cgi

3.2 安装及配置

  1. 解压到目录:D:\tomcat
  2. 设置环境变量: “我的电脑”->右键->“属性”->”高级系统设置”->"新建系统变量"
    CATALINA_HOME:D:\tomcat
    Path: ;%CATALINA_HOME%\lib;%CATALINA_HOME%\bin

3.3 验证

以“管理员身份运行” D:\tomcat\bin\startup.bat

http://localhost:8080/

4 安装axis2


返回

4.1 下载axis2

axis主页面:http://ws.apache.org/axis2/download.cgi

下载地址:http://mirror.bit.edu.cn/apache/axis/axis2/java/core/1.7.4/

下载axis2-1.7.4-bin.zip,解压到:D:\Dev\axis2-1.7.4 ,lib目录下的jar包是WebService业务开发需要的库文件

4.2 在tomcat中部署axis2

下载axis2-1.6.2-war.zip,解压到tomcat的webapps目录下(D:\tomcat\webapps),重启tomcat,会发现webapps目录下多了axis2文件夹,在浏览器里输入http://localhost:8080/axis2,会发现对应的网页,说明已经成功了

4.3 在eclipse中配置axis2

  1. 下载axis2-eclipse-codegen-plugin-1.7.4.zip和axis2-eclipse-service-plugin-1.7.4.zip
  2. 先关闭eclipse
  3. 进入eclipse的文件中将上面下载的eclipse插件解压到dropins文件目录下(解压的时候会生成plugins文件夹,我是把里面生成的jar直接拷出来放在dropins文件夹里面),这里解压到:D:\Program Files\eclipse-jee-indigo-SR2-win32-x86_64\eclipse\dropins。
  4. 然后重启eclipse,点击File->New->Other有如下图显示,则表示安装插件成功!

5 建立要发布的Web Service


返回

打开Eclipse,Windows->Preferences下new一个User Libraries,命名为axis2,将下载axis2-1.7.4-bin.zip解压到:D:\Dev\axis2-1.7.4,把该目录下lib 下的包均添加进来,如下图所示。这一步操作的目的是为了以后工程方便添加axis2所需的 jar文件。

  1. 建立一个JavaProject,命名为HelloWorld,
  2. 将axis2用户库加入到build path中
  3. 现在开始编写要发布的WebService,在src包中建包Services,建立Hello类如下:
package Services;

public class Hello {
public String sayHi(String user) {
return "Hi, "+ user;
}
}

6 发布Web Service


返回

  1. 编译刚刚建立的Hello类,类编译后,会在workspace中对应工程目录下的bin文件夹下生成Hello.class文件

  2. 打包要发布的Service, 点击Eclipse中New -> File -> Other -> Axis2 wizards -> Axis2 Services Archiver

  3. 按上图填写,class File Location为工作目录对应项目的bin文件夹,并勾上Include .class files only,点击next

  4. 默认选择Skip WSDL,点击next

  5. 默认,继续next

  6. 默认,继续next

  7. 如上图所示,Class name请务必设为Services.Hello,代表使用的类是D:\Users\...\workspace\HelloWorld\bin路径下,文件夹Services下的Hello类,否则Load不上的。

  8. 如上图所示,output file location务必填写tomcat目录的axis2\web-inf\services下,点击Finish后,可以发现:D:\tomcat\webapps\axis2\WEB-INF\services目录下增加了sayHi_service.aar

  9. 测试所发布的Web Service 
      打开http://localhost:8080/axis2/services/listServices页面,可以看到HelloWorld服务:

     点击HelloWorld链接进入wsdl页面

7 编写客户端代码调用WebService


返回

在src包中建包Client,建立myClient类如下:

package Client;

import javax.xml.namespace.QName;
import org.apache.axis2.AxisFault;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.rpc.client.RPCServiceClient; public class myClient { public static void main(String[] args) throws AxisFault { // 使用RPC方式调用WebService
RPCServiceClient serviceClient = new RPCServiceClient();
Options options = serviceClient.getOptions();
// 指定调用WebService的URL
EndpointReference targetEPR = new EndpointReference("http://localhost:8080/axis2/services/HelloWorld");
options.setTo(targetEPR); // 指定要调用的sayHelloToPerson方法及WSDL文件的命名空间
QName opAddEntry = new QName("http://Services", "sayHi");
// 指定sayHelloToPerson方法的参数值
Object[] opAddEntryArgs = new Object[] { "John" };
// 指定sayHelloToPerson方法返回值的数据类型的Class对象
Class[] classes = new Class[] { String.class };
// 调用sayHelloToPerson方法并输出该方法的返回值
System.out.println(serviceClient.invokeBlocking(opAddEntry, opAddEntryArgs, classes)[0]);
}
}

运行该程序,点击Run As->Java application,可以看到控制台端口的输出是:Hi, John

参考

[1] Eclipse+axis2+tomcat进行web部署

[2] eclipse安装Axis2插件和简单的webservice发布

[3] eclipse+webservice开发实例

Eclipse+tomcat+axis2进行web service部署的更多相关文章

  1. 使用Axis2创建Web Service

    Axis2是新一代Web Service开发工具,目前最新版本是1.5.本文主要介绍如何用Axis2创建Web Service. 首先下载二进制包和war包,将war包复制到Tomcat的webapp ...

  2. 新手Axis2 发布Web Service之路

    由于公司的需求,需要写几个银行接口写模拟器(Mock Server),此次接口需要发布成一个WEB Service. 一开始,我以为只要负责写接口的业务层就行了,具体的框架或是环境搭建可以不用管.在与 ...

  3. 走进云背后:微软Azure web 项目通过web service部署web site

    探索云那不为人知的故事(一):Web Services部署web site 前奏:Windows Azure是微软基于云计算的操作系统,现在更名为“Microsoft Azure”,和Azure Se ...

  4. Eclipse+Axis自动生成Web Service WSDL文件

    JDK版本:1.5.0_22 Eclipse版本:Helios Service Release 2(3.6.2) 首先创建一个web工程,创建过程如下: 如果选择Apache Tomcat v5.5, ...

  5. Eclipse+Tomcat+Axis2+ADT开发环境配置

    一.安装Eclipse和Tomcat 1.安装Eclipse: 2.解压缩安装apache-tomcat-6.0.41 3.tomcat配置环境变量(4个) TOMCAT_HOME     D:\An ...

  6. web service 部署

    写的不好,全当是写给自己看的吧. 公司用飞天诚信的加密狗对网站进行加密,我要部署加密狗的web service.注:web service 由加密狗公司提供. 1.新建网站dog

  7. 配置JDK、tomcat及Java Web项目部署

    一.JDK的安装 (1)下载安装JDK: 这个就不用说了,直接官网下载jdk安装即可.http://www.oracle.com/technetwork/java/javaee/downloads/i ...

  8. Eclipse下编写的web项目部署到tomcat下

    之前都是用myeclipse编写web项目,编写好然后在myclipse上配置的tomcat下的webapps文件想项目复制到其他tomcat下就能运行了. 最近学习jquery,将eclipse编写 ...

  9. Restful Web Service部署到weblogic 12c

    介绍一下环境: 首先需要下载一个jaxrs-ri-2.22.2.zip的包 采用Jdeveloper 12c版本,jdk1.8 WebLogic Server 12.2.1版本 Restful项目建立 ...

随机推荐

  1. serialize 序列化 +号处理

    少说多做,直接运行代码,代码中有注释: <!DOCTYPE html> <html lang="zh"> <head> <meta cha ...

  2. 【独立开发人员er Cocos2d-x实战 001】csb文件导出和载入

    使用cocos studio进行资源文件导出: 然后在cocosproject中进行载入csb文件:  auto myLayout = CSLoader::createNode("/res/ ...

  3. 〖Linux〗Ubuntu13.10中打开键盘背光灯

    刚刚从淘宝上买回一个带有Led背光的键盘(黑爵战神x5 背光升级版): 然后发现在Linux中背光灯并不亮,在Windows中就可以按下Scroll Lock键点亮: 在网上探索了一番,觉得应该可以使 ...

  4. hdoj 2199 Can you solve this equation? 【二分枚举】

    题意:给出一个数让你求出等于这个数的x 策略:如题. 由于整个式子是单调递增的.所以能够用二分. 要注意到精度. 代码: #include <stdio.h> #include <s ...

  5. Visual C#两分钟搭建BHO IE钩子

    微软在1997年正式推出Browser Helper Object (BHO), 使程序员能够更好的对IE进行二次开发和操作. 在通过编写BHO程序数月后, 我希望把我的一些经验告诉才开始的同志, 避 ...

  6. JS中函数的 this 各种指向

    this是js的一个关键字,随着函数使用场合不同,this的值会发生变化.但是总有一个原则,那就是this指的是调用函数的那个对象. 情形1:如果一个函数中有this,但是它没有被上一级的对象所调用, ...

  7. 清除Eclipse中的内置浏览器中的历史记录

    eclipse内置浏览器的访问记录是存储在对应的工程目录下的.metadata配置中, 也就是说你新建一个工程的话就没有了. 如果确实要删除那就找到工作空间中的org.eclipse.ui.brows ...

  8. Android开发之模仿UC浏览器的菜单

    这个内容内容涉及到的了两个知识点: PopupWindow:使用PopupWindow创建一个简单的菜单 使用TabHost创建标签:这个网上好多教程随便看看就好. 实现思路: 观察一下UC浏览器的菜 ...

  9. RabbitMQ消息队列(五):Routing 消息路由[转]

    上篇文章中,我们构建了一个简单的日志系统.接下来,我们将丰富它:能够使用不同的severity(严重程度)来监听不同等级的log.比如我们希望只有error的log才保存到磁盘上. 1. Bindin ...

  10. 使用Apktools反编译apk应用

    使用Apktools反编译apk应用 1.获取APK的classes.dex文件: 得到你想要的应用的apk文件,用解压软件打开apk,从apk中复制出classes.dex文件. 2.classes ...