2011-08-17 44 views
0

我尝试在Eclipse中创建一个自底向上的Java bean Web服务,我需要返回java.util.List所以我有这个服务器返回一个java.util.List在Web服务

public class BookStoreWS { 
    private Book book1; 
    private List<Book> listOfBooks; 

    public Book getBook(){ 
     return book1; 
    } 
    public List<Book> getBooks(){ 
     return listOfBooks; 
    } 
} 

,这对在客户端上

public static void main(String[] args) { 
    BookStoreWSStub stub = new BookStoreWSStub(); 
    GetBookResponseDocument gbrd = stub.getBook(); 
    Book book = gbrd.getGetBookResponse().getReturn();//OK 

    GetBooksResponseDocument gbrd2 = stub.getBooks(); 
    XmlObject OMGIAMNOTALIST = gbrd2.getGetBooksResponse().getReturn();//BAD 
} 

所以getBook()返回我想要的对象BookgetBooks()回报XmlObject,而不是一个List<Book>

获取List<Book>而不是XmlObject的简单方法是什么?或者将XmlObject转换为List<Book>

+0

我认为你需要提供更多的细节。 –

+0

你需要什么?我尝试尽可能简化它.. – Inuart

回答

0

这是你在找什么?

List<A> OMGIAMALIST = new ArrayList<A>(); 
OMGIAMALIST.addAll(stub.getAs()); 

for (A item : OMGIAMALIST) { 
    XmlObject OMGIAMANITEM = item.getGetAsResponse().getReturn(); 
} 

XmlObject(最有可能)不能是A,但项目肯定是。

+0

但是'addAll'无法获取GetAsResponseDocument作为参数。 – Inuart