CXF開發webservice的小demo以及需要的jar包

1.創建新的java項目即可  不需要web項目
下載需要的jar包     其中紅色的jar是tomcat的jar包  在你的tomcat的lib文件夾下的   如果沒有這個jar包運行時會報錯
Caused by: java.lang.ClassNotFoundException: javax.servlet.ServletOutputStream


具體的類
接口類

import javax.jws.WebParam;
import javax.jws.WebService;
import java.util.List;
@WebService
public interface UserServiceInter {


    public User getReader(@WebParam(name="name") String name, @WebParam(name="password") String password);


    public List<User> getReaders();


}


實現類

import javax.jws.WebService;
import java.util.ArrayList;
import java.util.List;
@WebService(endpointInterface = "com.test.test.UserServiceInter",serviceName = "userService")
public class UserServiceImpl implements UserServiceInter{


    public User getReader(String name, String password) {
        return new User(name, password);
    }


    public List<User> getReaders() {
        List<User> readerList = new ArrayList<User>();
        User reader = new User("test01","123456");
        User reader2 = new User("test02", "123456");
        readerList.add(reader);
        readerList.add(reader2);
        return readerList;
    }
}

測試類

import javax.xml.ws.Endpoint;
public class SimpleTest {
   public static void main(String[] args) {
       System.out.println("Server is starting");
       UserServiceImpl userService = new UserServiceImpl();
       Endpoint.publish("http://localhost:80/userService", userService);
       System.out.println("Server is started");
   }


}

登錄測試

import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
public class CallerTest {
    public static void main(String[] args) {
        JaxWsProxyFactoryBean factoryBean = new JaxWsProxyFactoryBean();
        factoryBean.setServiceClass(UserServiceInter.class);
        factoryBean.setAddress("http://localhost:80/userService");


        UserServiceInter readerService = (UserServiceInter)factoryBean.create();
        User reader = readerService.getReader("test01","123456");
        System.out.println("Reader:" + reader);
    }
}


實體

public class User {


    private String name;


    private String password;


    public User(){}


    public User(String name , String password) {
        this.name = name;
        this.password = password;
    }


    public String getName() {
        return name;
    }


    public void setName(String name) {
        this.name = name;
    }


    public String getPassword() {
        return password;
    }


    public void setPassword(String password) {
        this.password = password;
    }


    public String toString() {
        return "name:" + name + ",password:" + password;
    }


}



運行步驟
首先開啓服務 運行SimpleTest


在運行CallerTest


瀏覽器運行一下連接  出現以下說明成功
http://localhost/userService?wsdl




demo以及jar的下載

鏈接: http://pan.baidu.com/s/1jGs9sZ8 密碼: 2qqz









發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章