使用Xfire開發(fā)WebService
MyEclipse中和許多網站的WebService教程以HelloWord為例,內容比較簡單,在實際的項目應用中大多都是對象和集合,現在我們擴展下,使用webservice傳遞對象,字符串,集合;下面是我們設計的webservice的接口:
1
package com.test.service;
2
3
import java.util.List;
4
5
public interface IPerson {
6
//根據用戶名獲取密碼
7
public String getPassword(String name);
8
//根據用戶名獲取Person對象
9
public Person getPersonByName();
10
//獲取全部成員
11
public List<Person> getAllPerson();
12
}

2

3

4

5

6

7

8

9

10

11

12

其中有三個方法包含了傳遞:String,Object,List集合;
2,這里我們實現接口中定義的業(yè)務邏輯



























在實際應用中比較復雜,可能用調用持久層的Dao,返回需要的結果,這里我們直接創(chuàng)建一個模擬數據,下面是實現類中用到的對象
1
package com.test.service;
2
3
public class Person {
4
private String name;
5
private String password;
6
7
public Person() {
8
super();
9
}
10
public Person(String name, String password){
11
super();
12
this.name = name;
13
this.password = password;
14
}
15
public String getPassword(){
16
return password;
17
}
18
public void setPassword(String password){
19
this.password = password;
20
}
21
}
22

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

3,編寫XFire要求的WebSevice定義描述文件,如下:













5,編譯xml,定義XfireConfigableServlet
1
<?xml version="1.0" encoding="UTF-8"?>
2
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
3
<servlet>
4
<servlet-name>XFireServlet</servlet-name>
5
<servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class>
6
<load-on-startup>0</load-on-startup>
7
</servlet>
8
<servlet-mapping>
9
<servlet-name>XFireServlet</servlet-name>
10
<url-pattern>/services/*</url-pattern>
11
</servlet-mapping>
12
<welcome-file-list>
13
<welcome-file>index.jsp</welcome-file>
14
</welcome-file-list>
15
</web-app>
16
17
所有的工作都已經作完,接下來在部署在tomcate下,啟動服務器,在地址欄鍵入:http://127.0.0.1:8080/MyWebService/srevice/Person?wsdl
2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

如果出現xml描述文件就成功了;
posted on 2008-06-20 12:10 空白 閱讀(855) 評論(2) 編輯 收藏 所屬分類: Java