我的Web服务存根返回null



我用eclipse做了一个简单的web服务。我真的不明白为什么它返回null。

这里是Web Service服务器:

package server;
import java.util.HashMap;
import java.util.Set;
import entity.Book;
public class Library {
    private HashMap<String, Book> libraryHM = new HashMap<>();
    public Library() {
    }
    public Book add(String id, String name) {
        return  libraryHM.put(id, new Book(id, name));
    }
    public Book[] get(){
        Set<String> keys = libraryHM.keySet();
        Book[] bookArray = new Book[3];
        int i = 0;
        for(String key : keys) {
            bookArray[i++] = libraryHM.get(key);
        }
        return bookArray;
    }
}

book类:

package entity;
public class Book {
    private String id;
    private String name;
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Book(){
    }
    public Book(String id, String name) {
        this.id = id;
        this.name = name;
    }
    @Override
    public String toString() {
        // TODO Auto-generated method stub
        return "Id: "+ id + ", name " + name; 
    }
}

客户端:

public class Client {
    public static void main(String[] args) throws ServiceException, RemoteException {
        // TODO Auto-generated method stub
        Library l = new LibraryServiceLocator().getLibrary();
        ((LibrarySoapBindingStub) l).setMaintainSession(true);
        l.add("1", "hello1");
        l.add("2", "hello2");
        l.add("3", "hello3");
        Book[] book = l.get();
        for(int i =0; i < 3; i++) {
            System.out.println(book[i]);
        }
    }
}

要创建web服务,我执行以下操作:

new ->动态web项目->编写库和图书类。

从动态web项目中选择库-> new -> web service ->选择2种方法-> finish

然后是Web Service Client:选择新项目-> web服务客户端->选择库wsdl -> finish

当我运行主客户端时,我有:

11月。2016年9月9日7:45:45 PM org.apache.axis.utils. javutilsisAttachmentSupported AVERTISSEMENT:无法找到所需的类(javax.activation。DataHandler和javax.mail.internet. mimmultipart)。附件支持被禁用。零零空

为什么?

您需要在类路径中包含java邮件和激活jar文件。您可以google类名并将它们导入到代码中。一旦您准备好jar文件,Eclipse IDE将自动为您完成此操作,按Ctrl + Shift + O

我知道至少需要这个jar和另一个jar -您可以在这里下载邮件jar

最新更新