中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      XFire創建WebService實例

      時間:2024-09-14 02:27:00 Web Services 我要投稿
      • 相關推薦

      XFire創建WebService實例

        XFire使得在JavaEE應用中發布Web服務變得輕而易舉。和其他Web服務引擎相比,XFire的配置非常簡單,可以非常容易地和Spring集成。那么XFire怎么創建WebService,下面yjbys小編為大家分享XFire創建WebService簡單實例:

        一. 使用XFire發布WebService

        1. 創建service接口

        Java代碼

        1. package com.test.service;

        2. import com.test.service.bean.User;

        3.

        4. public interface IHelloService {

        5.   public String sayHello(String name);

        6.   public User getUser(User user);

        7.   }

        8. }

        2.創建Service接口的實現類

        Java代碼

        1. package com.test.service;

        2. import com.test.service.bean.User;

        3. public class HelloService implements IHelloService{

        4.   public String sayHello(String name){

        5.     return "Hello, "+name;

        6.   }

        7.   public User getUser(User user) {

        8.     User userNew = new User();

        9.     userNew.setId("new:"+user.getId());

        10.    userNew.setName("new:"+user.getName());

        11.    return userNew;

        12.  }

        13.}

        Java代碼

        1. package com.test.service.bean;

        2. public class User {

        3.   private String id;

        4.   private String name;

        5.   public String getId() {

        6.     return id;

        7.   }

        8.   public void setId(String id) {

        9.     this.id = id;

        10.  }

        11.  public String getName() {

        12.    return name;

        13.  }

        14.  public void setName(String name) {

        15.    this.name = name;

        16.  }

        17.}

        3.在web.xml文件中進行XFire攔截配置,可參照網提供的sample。

        Xml代碼

        1.

        2.<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"

        3.  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

        4.  xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee

        5.  http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

        6.

        7.

        8.XFireServlet

        9.

        10.    org.codehaus.xfire.transport.http.XFireConfigurableServlet

        11.

        12.

        13.

        14.XFireServlet

        15./servlet/XFireServlet/*

        16.

        17.

        18.XFireServlet

        19./services/*

        20.

        21.

        4.在class目錄下建立META-INF目錄,如(META-INF>xifre->services.xml),

        在services.xml文件中進行webservice服務的發布,可參照網提供的sample。

        Xml代碼

        1.

        2.

        3.

        4.HelloService

        5.com.test.service.IHelloService

        6.com.test.service.HelloService

        7.

        8.

        5.將xfire的Jar包和相關依賴包拷到系統應用中,在Tomcat下部署應用。

        啟動tomcat后訪問服務(需在應用后加上/services,webservice才會進行攔截):

        例:http://localhost:8080/ws2/services。(IE下有時無法顯示列表,可用其它瀏覽器顯示或指定接口名稱)

        界面如下:

        點擊后查看詳細的wsdl文檔,不同的瀏覽器下訪問會有區別,展示效果不一致。

        二.建立XFire客戶端進行調用

        1.本地客戶端調用,與webservice服務在同一應用。

        Java代碼

        1. package com.test.client;

        2.

        3. import java.net.MalformedURLException;

        4. import org.codehaus.xfire.XFireFactory;

        5. import org.codehaus.xfire.client.XFireProxyFactory;

        6. import org.codehaus.xfire.service.Service;

        7. import org.codehaus.xfire.service.binding.ObjectServiceFactory;

        8. import com.test.service.IHelloService;

        9. import com.test.service.bean.User;

        10.

        11.public class ClientTest {

        12.  public static void main(String args[]) throws MalformedURLException {

        13.    Service service = new ObjectServiceFactory().create(IHelloService.class);

        14.    XFireProxyFactory factory = new XFireProxyFactory(XFireFactory

        15.        .newInstance().getXFire());

        16.    String url = "http://localhost:8080/ws2/services/HelloService";

        17.    IHelloService helloService = (IHelloService) factory.create(service,url);

        18.    System.out.println(helloService.sayHello("張三"));

        19.    User user = new User();

        20.    user.setName("張三");

        21.    System.out.println(helloService.getUser(user).getName());

        22.  }

        23.}

        執行結果如下:

        Java代碼

        1. Hello, 張三

        2. new:張三

        2. 利用XFire創建build.xml文件生成客戶端代碼調用webservice服務

        2.1在src目錄下創建build.properties文件,配置如下:

        Java代碼

        1. src.dir=${basedir}

        2. lib.dir=D:/myspace/ws2/WebRoot/WEB-INF/lib

        3. wsdl.dir=http://localhost:8080/ws2/services/HelloService?wsdl

        2.2在src目錄下創建build.xml文件,配置如下:

        Xml代碼

        1.

        2.

        3.

        4.

        5.

        6.

        7.

        8.

        9.

        10.

        11.<taskdef name="wsgen" classname="org.codehaus.xfire.gen.WsGenTask"

        12.                       classpathref="project-classpath" />

        13.<wsgen outputDirectory="${src.dir}" wsdl="${wsdl.dir}"

        14.          package="stub.test.client" overwrite="true"/>

        15.

        16.

        用ant構建生成代碼,生成后的目錄如下:

        2.3編寫客戶端代碼進行調用

        Java代碼

        1. package com.test.client;

        2. import stub.test.client.HelloServiceClient;

        3. import stub.test.client.HelloServicePortType;

        4. import com.test.service.bean.ObjectFactory;

        5. import com.test.service.bean.User;

        6.

        7. public class HelloServiceTest {

        8.

        9.   public static void main(String args[]){

        10.    HelloServiceClient service = new HelloServiceClient();

        11.    HelloServicePortType portType = service.getHelloServiceHttpPort();

        12.    System.out.println(portType.sayHello("張三"));

        13.

        14.    ObjectFactory factory = new ObjectFactory();

        15.    User user = factory.createUser();

        16.    user.setName(factory.createUserName("張三"));

        17.    System.out.println(portType.getUser(user).getName().getValue());

        18.  }

        19.}

        執行結果如下:

        Java代碼

        1. Hello, 張三

        2. new:張三

      【XFire創建WebService實例】相關文章:

      EIGRP帶寬實例配置09-19

      硬盤故障排除「實例」12-27

      ASP編程實例大全05-29

      淺析php函數的實例06-08

      PHP中curl的使用實例07-31

      PHP對象注入的實例分析08-27

      JavaScript fontcolor方法入門實例07-07

      德國留學申請實例分析09-28

      包裝條款實例整理12-10

      實例談柔焦攝影技法09-03

      主站蜘蛛池模板: 丰满人妻中文字幕免费一二三四区 | 欧美久久中文字幕| 99视频精品羞羞色院| 亚洲性无码av在线| 通州市| 福利一区二区三区视频在线| 免费在线视频精品自拍| 国产毛片av一区二区三区网站| 国产不卡一区二区av| 青河县| 免青青草免费观看视频在线| 日韩av在线一二三四区| 国产在线观看不卡免费| 久久国产精品免费一区二区| 亚洲人成网站在线播放小说| 凭祥市| 大足县| 盐亭县| 元谋县| 亚东县| 融水| 国产三级三级三级看三级日本| 精品日韩国产一区二区| 亚洲一区二区精品在线播放| 精品国产高清一区二区广区| 无码人妻专区一区二区三区| 99熟妇人妻精品一区五一看片| 陈巴尔虎旗| 久99久精品免费视频热77| 合肥市| 丰满熟妇人妻无码区| 休宁县| 久久AⅤ无码精品色午麻豆| 和顺县| 日韩国产av一区二区三区精品 | 精品一二区| 蜜桃视频在线观看免费网址| 免费在线观看国产v片| 亚洲精品久久久蜜桃一区二区| 无码久久精品蜜桃| 欧美手机在线视频|