我用eclipse製作了一個簡單的web服務。我真的不明白爲什麼它返回null。我的Web服務存根返回null
這裏的Web服務服務器:
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;
}
}
書類:
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 - > dyanmic web項目 - >編寫圖書館和書類。
從動態web項目中選擇庫 - >新建 - > Web服務 - >選擇2種方法 - >完成
然後是Web服務客戶端: 選擇一個新的項目 - > Web服務客戶端 - >選擇庫WSDL - >完成
當我在客戶端運行的主要我有:
十一月09,2016 7:45:45 PM org.apache.axis.utils.JavaUtils isAttachmentSupported AVERTISSEMENT:無法找到所需的類 (javax.activation.DataHandler和javax.mail.internet.MimeMultipart)。 附件支持已禁用。 空 空 空
爲什麼?
我不明白我沒有任何遺漏的依賴。它是什麼 ? –
您顯然已經失去了依賴關係,正如您的錯誤所證明的那樣。 Java郵件API是一個依賴項,可以作爲jar文件下載。一旦完成,你已經將它包含在你的類路徑中,你可以導入缺失的類。 – Matt1776
我會嘗試你的解決方案,但我有這個「AVERTISSEMENT」在其他項目,但它仍然工作。你有其他想法嗎? –