通過CFX發布WebService(一)


        發布WebService的方法很多。如XFire,CFX等。現在首先介紹下怎樣通過CFX來發部一個WebService。

        (1) 首先,是從Apache官方網站獲取CFX的Java包。其地址是:http://cxf.apache.org/download.html。 在該網頁上可以下載最新的CFX 的Java開發包。

        (2) 其次,新建一個簡單的java工程,不必是web工程,只是通過eclipse或者myeclipse新建一個java project。將CFX的java開發包復制到該工程的classpath目錄下。

             當新建的是一個web工程時,只需要將該工程復制到lib文件夾中。

        (3) 在該工程中新建一個普通的接口。

package com.example.webservice;
import
javax.jws.WebParam; import javax.jws.WebService; @WebService public interface HelloWorldService { public String sayHello(@WebParam(name="userName")String userName); }

      注意到:上面的接口中有一個注解:@WebService,該注解表示這個是一個WebService服務     

      (4) 同時新建一個類,HelloWorldServiceImpl實現該接口。     

package com.example.webservice;
import
javax.jws.WebMethod; import javax.jws.WebService; @WebService(endpointInterface="com.example.webservice.HelloWorldService", serviceName="helloWorldService") public class HelloWorldServiceImpl implements HelloWorldService { @WebMethod public String sayHello(String userName) { System.out.println("HelloWorldServiceImp.sayHello("+userName+")"); return "Hello,"+userName; } }

    注意:這個實現類中,也有注解,一個是@WebService注解,該注解中有2個部分,一個是endpointInterface="com.example.webservice.HelloWorldService",

這里的內容是上面的接口的完整包名和接口名組成的。另一個是serviceName="helloWorldService",這個是用來現實該webService的入口的,即該webservice的名稱為

helloWorldService。當調用該webservice時,其地址應該是:htt://IpAddress:port/helloWorldService

     還有另一個注解:@WebMethod,該注解用來標識了webService的實現方法。

     現在主要的webservice的功能已經實現了,所要做的是將webservice進行發布。發布該webservice的方法有好幾種,可以用Spring發布,也可以直接運行一個main還是發布。

      現在演示的是用一個main函數發布該webservice。

      新建一個類,該類中有一個main函數。

    

import javax.xml.ws.Endpoint;

import com.lenovo.webservice.HelloWorldServiceImpl;

public class ServerTest {

    public static void main(String[] args) {
        System.out.println("Starting Server");
        HelloWorldServiceImpl helloWorldServiceImpl=new HelloWorldServiceImpl();
        String address="http://localhost:8090/helloWorldService";
        Endpoint.publish(address, helloWorldServiceImpl);
        System.out.println("Start success");

    }

}

       運行該類之后,該webservice就已經發布了。

      此時,可以在其他的程序中調用該webservice了。

    

  

 

 

       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM