动手编写WebService前先了解下它的原理及概念参考博客
一、WebService服务端:
1、创建Web Service Project 项目名:WebServiceTest
2、编写WebService接口
com.test.service.ISayHello.java
package com.test.service;
/**
* WebService服务接口
* @author *****
* @version [版本号, Nov 5, 2014]
* @see [相关类/方法]
* @since [产品/模块版本]
*/
public interface ISayHello {
public String Hello(String name);
}
3、编写WebService实现类
com.test.service.impl.SayHelloImpl.java
package com.test.service.impl;
import com.test.service.ISayHello;
/**
* WebService服务类
* @author *****
* @version [版本号, Nov 5, 2014]
* @see [相关类/方法]
* @since [产品/模块版本]
*/
public class SayHelloImpl implements ISayHello{
public String Hello(String name) {
return name+",您好!";
}
}
4、导入WebService包
5、编写配置文件
WebServices/services.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xfire.codehaus.org/config/1.0">
<!-- addtime 2014年11月5日11:46:38 start -->
<service>
<name>WebServiceTest</name>
<namespace>www.test.service.com/WebServiceTest</namespace>
<serviceClass>com.test.service.ISayHello</serviceClass>
<implementationClass>com.test.service.impl.SayHelloImpl</implementationClass>
</service>
<!-- addtime 2014年11月5日11:49:20 end -->
</beans>
6、部署并测试
浏览器输入
http://localhost:8080/WebServiceTest/services
二、WebService客户端:
1、创建Web Project 项目名:ClientTest
2、导入相关包(方法同服务端一样,右击项目名-->MyEclipse-->Add XFire...)
3、编写客户端接口
com.test.service.ISayHello.java
package com.test.service;
/**
* <一句话功能简述>
* <功能详细描述>
* @author *****
* @version [版本号, Nov 5, 2014]
* @see [相关类/方法]
* @since [产品/模块版本]
*/
public interface ISayHello {
public String Hello(String name);
}
4、编写接口实现类
com.test.service.TestWS.java
package com.test.service;
import java.net.MalformedURLException;
import org.codehaus.xfire.XFireFactory;
import org.codehaus.xfire.client.XFireProxyFactory;
import org.codehaus.xfire.service.Service;
import org.codehaus.xfire.service.binding.ObjectServiceFactory;
/**
* @author *****
* @version [版本号, Nov 5, 2014]
* @see [相关类/方法]
* @since [产品/模块版本]
*/
public class TestWS {
public static void main(String[] args) {
String url = "http://192.168.**.**:8080/WebServiceTest/services/WebServiceTest";
Service service = new ObjectServiceFactory().create(ISayHello.class);
XFireProxyFactory foctoryProxy = new XFireProxyFactory(XFireFactory.newInstance().getXFire());
try {
ISayHello objSayHello = (ISayHello) foctoryProxy.create(service,url);
System.out.println(objSayHello.Hello("zhangsan"));
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
}
5、运行测试--测试结果
zhangsan,您好!
WebServices两种客户端调用方式可以参考下这个博客