`
deltaj
  • 浏览: 207082 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

axis2创建web service(四)

阅读更多

      上节我们做了一个简单的例子,调用的服务里的方法只是简单返回一个字符串,这次我们要做一个复杂点的例子,调用服务里的方法返回一个java Bean对象。

      

       1. 首先做一个简单的java bean ,代码如下

package com.deltaj.server;

public class Persion {
	// 姓名
	private String name;
	// 年龄
	private int age;

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}

}

 

 

2.做一个服务,里面只发布一个方面,这个方法返回这个bean。

package com.deltaj.server;

public class BeanServer {

	/**
	 * 简单的测试方法
	 * 
	 */
	public Persion testMethod(String name, int age) {
		Persion persion = new Persion();
		persion.setName(name);
		persion.setAge(age);
		return persion;
	}
}

 3.按照第二节的做法,把这个服务发布出来。

  4.同样按照第三节的方法,用这个wsdl来生成stub代码。

  5.然后我们开始做一个方法来调用一下这个服务。

package com.deltaj.client;

import com.deltaj.server.TestServerStub;

public class BeanClient {
	public static void main(String[] args) throws Exception{
		// 初始化桩文件
		TestServerStub stub = new TestServerStub();
		// 初始化TestMethod方法。
		TestServerStub.TestMethod request = new TestServerStub.TestMethod();
		// 设置bean的属性值。
		request.setName("delta ");
		request.setAge(20);
		//   
		System.out.println("The name is:"+stub.testMethod(request).get_return().getName());
		System.out.println("The age is:"+stub.testMethod(request).get_return().getAge());
	}

}

 

6.如果按照这里说的做的话,你会看到

log4j:WARN No appenders could be found for logger (org.apache.axis2.description.AxisService).
log4j:WARN Please initialize the log4j system properly.
The name is:delta
The age is:20

祝你好运。:)

 

 

 附录:

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

4. axis2创建web service(四)

 

 

分享到:
评论
14 楼 xie378508297 2014-04-28  
写得太好了,谢谢lz,你还能写一些有关axis更深入一点的专题系列吗? 刚刚接触webservice, 很想学到一些更深的东西
13 楼 q269223 2013-03-14  
楼主写的非常棒,    。axis2 入门 最合适了·
12 楼 ianwei 2011-07-19  
好文章,详细清晰,不过提醒各位读者,文中涉及的插件和bin文件一定要统一版本,不然会有不少小问题的!
11 楼 peng_joy 2009-11-20  
Person英文写错了
10 楼 basakasky 2009-07-22  
andot 写道
为啥不能直接:
Persion p = stub.testMethod("delta ", 20);

这样调用呢?这样多直观多方便啊。

向这种:
System.out.println("The name is:"+stub.testMethod(request).get_return().getName());  
System.out.println("The age is:"+stub.testMethod(request).get_return().getAge());  

服务到底执行了 1 遍还是 2 遍都不好说。



测试了一下,是执行了两遍,对于axis2的Eclipse插件的使用算是知道了,但是对原理真的不是很懂,好像不是很好用
9 楼 king1065 2009-06-18  
谢谢你的文章,真是不错的东西,最近要做个接口,急需这方面资料
8 楼 fjlyxx 2009-06-13  
LZ有兴趣讲解下SOAP协议吧 AXIS只是个工具  返回简单类型和复杂类型是不一样的 配置下你的wsdd文件即可.
7 楼 phantom3 2009-06-12  
   
6 楼 heartsky189 2009-05-15  
非常感谢,由于有个项目需要和其他的应用系统做接口,本人没做过,找了两天才找到像这样比较完整,详细的学习资料。让我逐步认识了axis2,可对于怎么做接口还是不知道该如何下手,如果可以,请多多指点。QQ:328633354
谢谢!
5 楼 yzwei666 2009-04-16  
大家好,我返回bean时,就会出错,返回简单类型就没有类型,不知道是怎么回事?
4 楼 yzwei666 2009-04-09  
楼主,你好,我从数据库中读出信息后,用构造函数初始化给一个类,然后把类返回,可是读不到这个返回类中属性的值,不知道针对这种问题是怎么解决的?
3 楼 andot 2009-02-15  
为啥不能直接:
Persion p = stub.testMethod("delta ", 20);

这样调用呢?这样多直观多方便啊。

向这种:
System.out.println("The name is:"+stub.testMethod(request).get_return().getName());  
System.out.println("The age is:"+stub.testMethod(request).get_return().getAge());  

服务到底执行了 1 遍还是 2 遍都不好说。
2 楼 lihudgm 2009-02-15  
好文!!
请问Axis2与Axis1.4相比有什么优点?
1 楼 yuan29346 2008-12-13  
多谢,通过你的讲解,让我初步认识了AXIS2,呵呵

相关推荐

    Axis2创建web service快速入门

    Axis2创建web service快速入门

    用Axis2创建Web Service

    Axis2创建WebService,有详尽介绍,还有附图,本人进行过测试,可以使用

    (原创)用Eclipse + Axis2+Tomcat创建Web Service

    (熬夜做成,希望多多看看,有一处错误,把单词wapper改为webapps,敬请原谅) 目录大纲: ...三、 Web Service 客户端的创建。 3.1 创建WSDL文件。 3.2 利用WSDL创建stub。 3.3 利用stub类测试服务。

    MyEclipse7.0创建基于Axis的Web service

    通过该实验将掌握配置MyEclipse7.0的axis Web Service的开发环境,通过Top-Down方式创建、发布基于axis Web Service的基本步骤,进一步加深学生对XML、WSDL、SOAP等Web Service概念的理解。

    helios创建Web Service服务(axis2)

    helios创建Web Service服务

    在Eclipse中创建基于Axis2的web services

    3. 创建web工程 1). 建立一个 JavaProject 命名为 ws ,将 axis2 用户库加入到 build path 中。 2). 现在开始编写要发布的 WebSevice ,在 src 中建包 briup ,建立 Hello 类如下 Package pkg.service; public ...

    Axis+MyEclipse6.0+Tomcat5.0开发Web Service实例总结

    Axis+MyEclipse6.0+Tomcat5.0开发Web Service实例总结

    Axis2运行环境2

    1. axis2-1.1.1.rar中包含工程中所需的axis2的类包。 2. axis2.war是打包好的web应用。用于放在Tomcat中,当运行Tomcat后会自动解压。...具体的部署步骤和使用请参照《(原创)用Eclipse + Axis2+Tomcat创建Web Service》

    Spring Web Service实例

    好像没有多少人讨论, 大多数的话题都是围绕xfire, cxf, axis/axis2等主流的Web Service框架.尽管是从事这方面的工作, 不过实际开发中还是公司内部开发的一个Web Service模块, 发现与Spring提供的这个模块的构架很像...

    Axis2运行环境1

    1. axis2-1.1.1.rar中包含工程中所需的axis2的类包。 2. axis2.war是打包好的web应用。用于放在Tomcat中,当运行Tomcat后会自动解压。...具体的部署步骤和使用请参照《(原创)用Eclipse + Axis2+Tomcat创建Web Service》

    axis2-1.6.2

    Axis2创建WebService实例所需要的bin压缩包和war压缩包

    Developing Web Services with Apache Axis2

    这是最好的手把手教会你怎么去创建web service应用

    如何使用Axis_CXF创建WS服务

    使用axis和CXF实现web service的说明文档。

    Apache Web Service(JAVA 必看)

    Woden项目是Apache Web Services项目演化而来的一个子项目,主要用来开发用于读/写、操作、创建WSDL文档的Java类库,在初始阶段支持WSDL2.0,但是随着开发的继续,将会支持各种版本的WSDL。 Woden主要包含了两部分...

    基于SOAP和Axis2的Web服务设计与实现

    Web Service作为SOA(Service Oriented Architecture)的最好实现...介绍了Web服务框架以及支撑Web服务的WSDL、SOAP、Axis2和JUDDI等相关理论知识,通过设计与实现一个例子来阐述Web服务创建、发布、查找和调用的整个过程.

    java SOAPHEADER的web service

    c# JSON返回格式的WEB SERVICE//www.jb51.net/article/16768.htm我这里是利用axis创建类包的,首先下载axis的压缩包,然后解压,把axis放到webapp下面。如果可以运行,就OK了。 c#创建的webservice自带的wsdl的,...

    编程入门_Eclipse教程

    3. 编写Web service程序 10 3.1. Axis2的简单WebService示例 10 3.1.1. 0配置POJO的Webservice 10 3.1.2. 用axis2的辅助工具发布、调用WebService 12 3.1.3. WebService会话Session的管理 24 3.1.4. 用Spring创建的...

    解决异构系统的通信和整合

    在TOMCAT-HOME/webapps/axis下创建MyMath.jws文件

    Java实现webservice实例

     一:首先创建个WEB工程,然后: http://ws.Apache.org/axis/网站下载Axis安装包.当然还依赖其他包的,我这里在附件里上传了所有应用到得包,方便大家。  二:然后写wsdd 文件(注:其实这里真的不用,可以跳过第...

Global site tag (gtag.js) - Google Analytics