当前位置: 代码迷 >> Web前端 >> axis2创办web service(二)
  详细解决方案

axis2创办web service(二)

热度:174   发布时间:2012-10-26 10:30:59.0
axis2创建web service(二)

工具都已经准备齐全了。我们来动手做一个小例子来小试牛刀!

这一节我们先利用axis2来发布一个web service 的服务,然后在下一节我们做一客户端来调用这个服务。

我们的服务很简单的,就是输入一个字符串,然后打印出一段字符串。

代码很简单,主要是测试用。

?

package com.deltaj.server;

public class SimpleServer {

	/**
	 * 简单的测试方法
	 * 
	 */
	public String simpleMethod(String name) {
		return name + "Say this is a Simple method ^-^";
	}

}

?

主要的过程就是如何利用axis2的eclispe插件来发布这个服务啦。

?

1。在eclispe 的package Explorer 中点击右键,在菜单中选择新建--->other...----->Axis2 Service Archiver

?

2.然后点击next进入了类选择页面,在这个页面中的Class?File Location选择框中选择类所在的文件夹。?


?3.点击next之后进入了选择 wsdl文件,这里我们选择skip wsdl。

?

?

4. 点击next之后,进入的是选择jar文件的页面,这里我们没有外部的jar,所以点击next直接跳过这个页面。


?4.点击next之后,进入的是选择xml页面,这里我们选择的是自动生成xml,也就是勾选

Generate the service xml automatically这一项


?5.点击next之后,进入的是生成xml文件的页面,在service name 里填写这个服务所起的名字,这里我起名为simpleServer,然后在class name 中填写要发布的类,这里一定要写全路径,写好后就可以点击load 按钮,

如果一切ok的话,你会看到如下画面


?6 点击next 后,进入的是输出artiver文件的页面,先要在output File?location 中选择要输出的路径,

?? 在output? File Name中输入artiver文件的名称。我起的名字是simpleServer


?7.点击finish ,如果看到如下的画面,恭喜你,服务发布成功啦。

?

8.接下来,我们就可以把这个aar文件放入tomcat中发布,首先把生成的aar文件拷贝到tomcat目录中的axis2项目的service目录中位置如图。



?

9.接下来启动tomcat,在地址栏中输入http://localhost:8080/axis2?,你会看到axis2的欢迎画面

?

?

10.点击Service连接,你会看到发布的服务列表。这里面就能看到我们发布的simpleService


?11.点击我们的服务simpleServer的连接,我们会看到。至此,服务发布成功。

?
?

?

?附录:

1. axis2创建web service(一)
2. axis2创建web service(二)
3. axis2创建web service(三)

4. axis2创建web service(四)

?

1 楼 a__mao 2009-01-20  
正在学习中,非常感谢!
网上一大堆无深度无可用性的HelloWorld,就需要这样连载的!
支持!继续!
2 楼 portrait 2009-02-18  
a__mao 写道
正在学习中,非常感谢!
网上一大堆无深度无可用性的HelloWorld,就需要这样连载的!
支持!继续!

对 网上的都是些没意义的helloworld 受不了
3 楼 portrait 2009-02-18  
我照着lz的例子一步步坐下来的 为什么没有simpleServer?你tomcat用的是什么版本的?tomcat-5.5.23可以吗?
4 楼 portrait 2009-02-19  
问题已解决
5 楼 ych19850810 2009-04-08  
谁帮忙给我的邮箱发一下那2个在Eclipse中的AXIS2插件 不盛感激!
ych19850810@163.com
6 楼 ych19850810 2009-04-08  
帮楼主说明一下 第二步的时候 选择类的路径应该是项目中所有class文件的根路径 如果指定错了 就无法找到需要发布的class文件
7 楼 tom840520 2009-05-18  
ych19850810 写道

帮楼主说明一下 第二步的时候 选择类的路径应该是项目中所有class文件的根路径 如果指定错了 就无法找到需要发布的class文件

千万记住,这边很重要啊,不然会出现【无法找到需要发布的class文件】
谢谢楼上的兄弟。
8 楼 kevindurant 2009-05-20  

郁闷了,我跟着你的步骤做,,到第五步那里load  始终都是class not found
9 楼 kevindurant 2009-05-21  

第二步指定的是classes 目录,,需要指定到classes 下面的 目录吗?

  偶试了两种都不可以
10 楼 kevindurant 2009-05-21  

  再问axis2 生成的服务端 CXF 可以调用吗??

   理论上都是规范来的,应该是可以的,但是我之前用cxf 调用axis2的服务却不成功。。
11 楼 kyvin 2009-06-05  
还是与别人一样的问题 到第五步那里load  始终都是class not found
为啥呢
12 楼 awl2002 2009-06-06  
第五步的class not found,怎么设都找不到,向导生成失败,关了在开会出现点击下一步,界面无显示的bug,这个发布插件真是稀烂啊
13 楼 xiaohu1986 2009-07-17  
第二步指定的是classes 目录 就可以
14 楼 smaxpp 2009-10-07  
如果我要部署多个SERVICE怎么办?
15 楼 loveegg133 2009-11-12  
O(∩_∩)O谢谢
16 楼 zkk503905496 2011-11-10  
同样     第五步,就刚开始一次成功过,后面就不行了,第二次是保存着第一次的配置,一点没改点next到第五步也出错???求解
17 楼 yangsen251024 2011-12-05  
我刚测试了下路径的问题,类之间建在src下面,是可以load到的,如果放到比如com.test.abc这样的包路径下,就load不到了,不知道是什么原因。。 还有,就是用在eclipse里用axis2插件问题真多,有时卡主;可能在myeclipse里用的话效果更好些。
18 楼 zhaoshun0417 2011-12-06  
为什么不使用定时发布?
19 楼 han071530342 2012-04-30  
不行啊 load不下去了
  相关解决方案