1.配置XFire运行环境:
eclipse新建一个Web Service project,命名为ws,添加所需的类库,web.xml中自动生成
<?xml version="1.0" encoding="GB2312"> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <servlet> <servlet-name>XFireServlet</servlet-name> <servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>XFireServlet</servlet-name> <url-pattern>/services/*</url-pattern> </servlet-mapping> </web-app>
2.编写接口和实现类
public interface HelloService {
String sayHello(String name);
}
public class HelloServiceImpl {
public String sayHello(String name){
return name+",你好!";
}
}
3.services.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://xfire.codehaus.org/config/1.0"> <service> <name>HelloService</name> <namespace>http://test/HelloService</namespace> <serviceClass>test.HelloService</serviceClass> <implementationClass>test.HelloServiceImpl</implementationClass> </service> </beans>
4.访问http://localhost:8080/test/services/HelloService?WSDL
5.客户端测试
public class ClientTest{
public static void main(String[] args) throws MalformedURLException, Exception {
Client client = new Client(new URL("http://localhost:8080/test/services/HelloService"));
Object[] results=client.invoke(方法名, new Object[]{"hello"});
System.out.println((String)results[0]);
}
}