Java cxf WebService 入門[sayHello]

個人工程目錄全景截圖:java

(jar包有不少,截圖裏只是一部分,請無視person.java文件,那個是後來測試用的)web

 

下面咱們來一步步搭建這個webservice 。apache

 

[1]eclipse新建工程 dynamic web projectapp

        引入cxf等一系列jar包,並注意文件擺放位置(能夠登錄CXF官方站點:http://cxf.apache.org/下到。有空過些時候考慮放個下好的壓縮包文件連接上來)eclipse

[2]新建一個接口類     IHelloCXFService.java測試

package cxf.server;
import javax.jws.WebService;
import cxf.model.Person;


@WebService
public interface IHelloCXFService {

	public String sayHello(String name);

	
}

[3]新建一個java類來繼承這個接口  IHelloCXFService.javacode

package cxf.server;

import javax.jws.WebService;

import cxf.model.Person;


@WebService
public class IHelloCXFServiceImpl implements IHelloCXFService {


	public String sayHello(String name) {
		System.out.println("sayHello方法被調用");  
		return "你好!" + name;
	}
	
}

[4]寫一個java類來發布這個webservice      MainServer.javaserver

package cxf.server;


import javax.xml.ws.Endpoint;

import org.apache.cxf.endpoint.Server;
import org.apache.cxf.jaxws.JaxWsServerFactoryBean;


public class MainServer
{


public static void main(String[] args)
{

//經過CXF提供的JaxWsServerFactoryBean來發布webservice
JaxWsServerFactoryBean factory = new JaxWsServerFactoryBean();
factory.setServiceClass(IHelloCXFServiceImpl.class);
factory.setAddress("http://localhost:8080/HelloWorld");

Server server = factory.create();
server.start();


}


}

[5]寫到這裏,右擊mainserver.java文件,選擇java application運行xml

    訪問一下    http://localhost:8080/HelloWorld?wsdl繼承

若是出現以下相似界面,則說明以前操做正確,咱們繼續。

[6]編寫一個客戶端測試類   HelloWorldClient.java

package cxf.client;

import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;

import cxf.model.Person;
import cxf.server.IHelloCXFService;

public class HelloWorldClient
{

	public static void main(String[] args)
	{
		JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
		factory.setAddress("http://localhost:8080/HelloWorld");
		factory.setServiceClass(IHelloCXFService.class);
		IHelloCXFService helloWorld = (IHelloCXFService) factory.create();
		System.out.println(helloWorld.sayHello("yuyu"));
	
		
	}

}

[7]到此爲止,代碼部分已所有寫完。

下面跑一遍測試

先運行mainserver.java

再運行HelloWorldClient.java

服務端控制檯輸出結果:

客戶端控制檯輸出結果:

測試成功。

相關文章
相關標籤/搜索