`
hua2142452
  • 浏览: 66447 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

webservice -XFire 客户端调用技术

阅读更多
1.创建一个工程:clientWebservice
2.创建与服务器端相同的pojo类和接口类
Person
package com.bean;

import java.io.Serializable;
import java.util.Date;

public class Person implements Serializable {

	private int id;

	private String name;

	private int age;

	private Date birthday;

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	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;
	}

	public Date getBirthday() {
		return birthday;
	}

	public void setBirthday(Date birthday) {
		this.birthday = birthday;
	}

	public String toString() {
		return "id:" + id + ", name:" + name + ", age:" + age + "birthday: "
				+ birthday;
	}
}



PersonService

package com.service;

import java.util.Date;
import java.util.List;

import com.bean.Person;

/**
 * TODO web服务接口 date:Jan 14, 2010 time:2:29:49 PM author:wxj
 * email:jxauwxj@126.com
 */
public interface PersonService {

	/**
	 * 返回一个String类型
	 * 
	 * @param name
	 * @return
	 */
	public String sayHello(String name);

	/**
	 * 返回一个int类型
	 * 
	 * @return
	 */
	public int getAge();

	/**
	 * 返回一个Date类型
	 * 
	 * @return
	 */
	public Date getBirthday();

	/**
	 * 返回一个自定义类型
	 * 
	 * @return
	 */
	public Person getPerson();

	/**
	 * 返回一个复杂类型
	 * 
	 * @return
	 */
	public List<Person> getPersons();

}



3.写一个调用webservice服务器端的测试类
ClientTest

package com;

import java.net.MalformedURLException;

import org.codehaus.xfire.XFire;
import org.codehaus.xfire.XFireFactory;
import org.codehaus.xfire.client.XFireProxyFactory;
import org.codehaus.xfire.service.Service;
import org.codehaus.xfire.service.binding.ObjectServiceFactory;

import com.bean.Person;
import com.service.PersonService;

public class ClientTest {
	public static void main(String[] args) {
		
		//调用外部webservice返回对象类型测试fire
		Service fireService = new ObjectServiceFactory().create(PersonService.class);
		XFire fire = XFireFactory.newInstance().getXFire();
		XFireProxyFactory fireproxy = new XFireProxyFactory(fire);
		PersonService client2 = null;
		String serviceUrl2 = "http://localhost:8080/fire/services/person";
		try {
			client2 = (PersonService) fireproxy.create(fireService, serviceUrl2);
		} catch (MalformedURLException e) {
			System.out.println("Client call webservice has exception: "
					+ e.toString());
		}
		int age = client2.getAge();
		Person person = client2.getPerson();
		System.out.println("Age:" + age);
		System.out.println("Person->\n\t" + person);
	}
}



OK  将服务器端启动起来,之后执行测试类,查看是否掉通
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics