工作环境: Eclipse3.3+tomcat6+xFire1.2.6
XFire 官方网站?http://xfire.codehaus.org
可以从该网站下载xfire-distribution-1.2.6.zip文件,里面包含了xFire的文档、类包及相关文档说明。
附件下载提供本文的实例源码(不包含lib库):webservices_xfire_demo(not-lib)
本文主要记录了在Eclipse中如何一步一步的创建xFire webservices的详细步骤:
一、Eclipse中创建项目
New project->Dynamic Web Project
class="alignnone size-full wp-image-91">
下一步:
接下来一步一步创建好就可以了。
二、在src目录下创建main文件夹,同时修改project的src配置
把.classpath中的: <classpathentry kind=”src” path=”src”/>改为:
<classpathentry kind=”src” path=”src/main”/>
三、在src/main 下创建package:com.michael.xfiredemo,同时创建类:WelcomeXfire.java
monospace !important; direction: ltr !important; display: block !important;">1
package
?com.michael.xfiredemo;
2
?
3
/**
4
?
* @author Michael sun
5
?
*/
6
public
?class
?WelcomeXfire {
7
????
/**
8
?????
* @param name
9
?????
* @return String
10
?????
*/
11
????
public
?String sayHello(String name) {
12
????????
return
?name +?
",你好!欢迎来到xFire世界。"
;
13
????
}
14
?
15
}
?四、在src/main 创建文件夹 META-INF/xfire,在该文件夹下创建文件services.xml:
ps:这一步非常重要,这样发布时会把META-INF/xfire/services.xml编译到WEB-INF\classes\META-INF\xfire\services.xml
1
<?
xml
?version
=
"1.0"
?encoding
=
"UTF-8"
?>
2
<
beans
?xmlns
=
"http://xfire.codehaus.org/config/1.0"
>
3
????
<
service
>
4
????????
<
name
>welcomeServices</
name
>
5
????????
<
namespace
>
6
?
7
http://com.michael.xfiredemo/welcomeServices
8
?
9
????????
</
namespace
>
10
????????
<
serviceClass
>com.michael.xfiredemo.WelcomeXfire</
serviceClass
>
11
????
</
service
>
12
</
beans
>
下面给出本人项目结构图如下:
五、加载需要的lib包
把xfire-distribution-1.2.6.zip解压后lib文件下的类包(去掉servlet-api-2.3.jar和servlet-api-2.5-6.1.2rc0.jar?因为tomcat已经有servlet包)copy到webapp\WEB-INF\lib,同时把xfire-all-1.2.6.jar 也copy到webapp\WEB-INF\lib下
六、修改web.xml文件如下:
1
<?
xml
?version
=
"1.0"
?encoding
=
"UTF-8"
?>
2
<
web-app
?xmlns:xsi
=
"http://www.w3.org/2001/XMLSchema-instance"
3
????
xmlns
=
"http://java.sun.com/xml/ns/javaee"
4
????
xmlns:web
=
"http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
5
????
xsi:schemaLocation
=
"http://java.sun.com/xml/ns/javaeehttp://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
6
????
id
=
"WebApp_ID"
?version
=
"2.5"
>
7
????
<
display-name
>webservices_xfire_demo</
display-name
>
8
????
<
welcome-file-list
>
9
????????
<
welcome-file
>index.html</
welcome-file
>
10
????????
<
welcome-file
>index.htm</
welcome-file
>
11
????????
<
welcome-file
>index.jsp</
welcome-file
>
12
????????
<
welcome-file
>default.html</
welcome-file
>
13
????????
<
welcome-file
>default.htm</
welcome-file
>
14
????????
<
welcome-file
>default.jsp</
welcome-file
>
15
????
</
welcome-file-list
>
16
?
17
????
<
servlet
>
18
????????
<
servlet-name
>XFireServlet</
servlet-name
>
19
?
20
????????
<
servlet-class
>
21
????????????
org.codehaus.xfire.transport.http.XFireConfigurableServlet
22
????????
</
servlet-class
>
23
????
</
servlet
>
24
?
25
????
<
servlet-mapping
>
26
????????
<
servlet-name
>XFireServlet</
servlet-name
>
27
????????
<
url-pattern
>/servlet/XFireServlet/*</
url-pattern
>
28
????
</
servlet-mapping
>
29
?
30
????
<
servlet-mapping
>
31
????????
<
servlet-name
>XFireServlet</
servlet-name
>
32
????????
<
url-pattern
>/services/*</
url-pattern
>
33
????
</
servlet-mapping
>
34
?
35
</
web-app
>
七、项目右击 Run As->Run on Server,在浏览器里输入:http://localhost:8082/webservices_xfire_demo/services? 看到如下:
即发布成功。