1,创建webservice project
001
package com.hoperun.service;
//Generated by MyEclipse
public interface IHelloWebService {
public String example(String message);
}
002
package com.hoperun.service;
//Generated by MyEclipse
public class HelloWebServiceImpl implements IHelloWebService {
public String example(String message) {
return message+"----------"+str;
}
}
003
web.xml的配置
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>XFireServlet</servlet-name>
<servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>XFireServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
004
services.xml配置
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xfire.codehaus.org/config/1.0">
<service>
<name>HelloWebService</name>
<serviceClass>
com.hoperun.service.IHelloWebService
</serviceClass>
<implementationClass>
com.hoperun.service.HelloWebServiceImpl
</implementationClass>
<style>wrapped</style>
<use>literal</use>
<scope>application</scope>
</service></beans>
2,创建 客户端 javaProject or Web Project
001
首先导入再服务端定义的接口类
package com.hoperun.service;
//Generated by MyEclipse
public interface IHelloWebService {
public String example(String message);
}
002
创建客户端的测试类
package com.hoperun.saytoserver;
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.hoperun.service.IHelloWebService;
public class ClientToService {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//创建服务的元数据
Service serviceModel = new ObjectServiceFactory().create(IHelloWebService.class);
//创建服务代理
XFire xfire = XFireFactory.newInstance().getXFire();
XFireProxyFactory proxy = new XFireProxyFactory(xfire);
//服务地址
String serviceURL = "http://localhost:8080/HopeRunService/services/HelloWebService";
//服务代理通过服务元数据和服务地址 获得 服务实例
try {
IHelloWebService ihws = (IHelloWebService)proxy.create(serviceModel, serviceURL);
String serviceResponse = ihws.example("测试service --- client");
System.out.println("服务器返回的结果是 : "+serviceResponse);
System.err.print("客户端"+serviceResponse);
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}//main()
}//class
wsdl 请求
http://localhost:8080/WebServiceServerProject/services/HelloWebService?wsdl