服务器端:
一、首先建立WEB.XML文件的配置映射,当访问services时,调用XFireConfigurableServlet来处理:
xml 代码
- ……
- <web-app>
- <servlet>
- <servlet-name>XFireServlet</servlet-name>
- <display-name>XFire Servlet</display-name>
- <servlet-class>
- org.codehaus.xfire.transport.http.XFireConfigurableServlet
- </servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>XFireServlet</servlet-name>
- <url-pattern>/servlet/XFireServlet/*</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>XFireServlet</servlet-name>
- <url-pattern>/services/*</url-pattern>
- </servlet-mapping>
- </web-app>
二、XFireConfigurableServlet会自动查找classes下的META-INF\xfire\services.xml配置文件,在这个XML配置文件中,把要提供服务类或接口进行绑定,设置其名称、命名空间、需要绑定的类:
xml 代码
- <beans xmlns="http://xfire.codehaus.org/config/1.0">
- <service>
- <name>MathService</name>
- <namespace>http://192.168.0.16/MathService</namespace>
- <serviceClass>lpl.MathService</serviceClass>
- </service>
- </beans>
三、把需要服务的类或接口编写出来,我的示例是lpl.MathService类:
java 代码
- package lpl;
- public class MathService {
- public long add(int a,int b){
- return a+b+1000;
- }
- public long sub(int a, int b){
- return a-b+1000;
- }
- }
四、把XFire及其需要的包都拷过来。
下载XFire后,解压后有个lib目录,把里面全部的包都拷过来
下载的XFire包也拷过来
五、起动TOMCAT进行服务器端的测试:
输入网址:http://localhost:8080/MathService/services/
浏览器会显示你所绑定的类或接口名称,如:
Available Services:
- MathService [wsdl]
Generated by XFire ( http://xfire.codehaus.org )
点击服务名后面的[wsdl],会显示该服务类的详细wsdl描述。(某些浏览器或插件可能会显示失败,我用TW就不能正常访问,所以不行时,换个浏览器试试)