您的位置:首页 > 其它

用jaxws从服务器传一个集合到客户端,收到的集合size()竟然为0

2017-01-02 09:06 155 查看
MyService.class
package com.jingtian.demo;

import java.util.ArrayList;

import java.util.List;

import javax.jws.WebService;

import javax.jws.soap.SOAPBinding;

import com.jingtian.domain.Book;

@SOAPBinding(style = SOAPBinding.Style.RPC)

@WebService

public interface MyService {

public ArrayList<Book> getBook();

}


MyServiceImpl.class
package com.jingtian.demo;

import java.util.ArrayList;

import javax.jws.WebService;

import javax.jws.soap.SOAPBinding;

import com.jingtian.domain.Book;

@SOAPBinding(style = SOAPBinding.Style.RPC)

@WebService(endpointInterface="com.jingtian.demo.MyService")

public class MyServiceImpl implements MyService {

@Override

public ArrayList<Book> getBook() {

ArrayList<Book>books=new ArrayList<Book>();

Book book=new Book();

book.setName("hello world!");

book.setAuthor("jingtian");

books.add(book);

return books;

}

}


Test.class
package com.jingtian.demo;

import javax.xml.ws.Endpoint;

public class Test {

public static void main(String[] args) {

//开启服务

String str="http://127.0.0.1:8888/ns";

Endpoint.publish(str, new MyServiceImpl());

}

}


用Test.class启动服务器

TestClient.class
package com.jingtian.demo;

import java.net.MalformedURLException;

import java.net.URL;

import java.util.List;

import javax.xml.namespace.QName;

import javax.xml.ws.Service;

import com.jingtian.domain.Book;

public class TestClient {

public static void main(String[] args) {

try {

URL url=new URL("http://127.0.0.1:8888/ns?wsdl");

QName name=new QName("http://demo.jingtian.com/","MyServiceImplService");//第二个参数固定

Service service=Service.create(url, name);

MyService myService=service.getPort(MyService.class);

System.out.println(myService.getBook().size());

} catch (MalformedURLException e) {

e.printStackTrace();

}

}

}


用TestClient.class启动客户端

客户端收到的集合,长度为0

服务器端长度为1

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐