讓我試着回答你的問題:
首先:您不需要需要知識JSP和HTML用於創建Web服務。如果您有興趣瞭解更多知識,而不是像SOAP,WSDL或XML(基於SOAP和WSDL文件)的主題。你可以在w3schools找到很好的信息。
正如你的任務要求,說你必須與數據庫結合您的服務,所以你必須要面對的事實,Web服務是無法發送的data每樣。例如,如果您打算使用某種JPA,您將無法通過WebService輕鬆地發送客戶端和服務器之間的實體(儘管可能)。
爲此,我的方法是在客戶端和服務器之間發送簡單的數據類型,並在服務器端構建我的複雜對象。
這會迫使我至少編寫3個類(每個webservice一個,一個與數據庫通信)。
航空公司WS:
@WebService
public class Airline {
@WebMethod
public String stuffToDo {
// do your stuff
persistOrSelect(complexObject);
return "success";
}
private boolean persistOrSelectData(Object complex) {
// Database stuff here
DBdao.doStuff(complex);
return true;
}
}
旅遊代理商WS:
// same structure as shown above
DB類:
public class DBdao {
public static doStuff(Object complex) {
// get DB connection and INSERT, SELECT, UPDATE
}
}
在這種情況下你甚至不需要使用javax.ejb
包中的課程,但我知道這可能是必要的:)。
我並沒有真正使用Netbeans因此我只能推測。我認爲你的問題2.)和3.)相互關聯。
javax.*
包通常位於您的JDK中,並且應在您的IDE中使用server library/target runtime
內指定。
- 您是否已將
server library
分配給您的項目?
- 您是否試圖將您的Netbeans安裝指向您的JDK路徑,如here和here?
- 您的項目也可能沒有對
Java System library
的引用。
最後但並非最不重要的:
有幾種方法來測試您的Web服務:
- 您將使用NetBeans therfore我假設你的GlassFish服務器上部署項目。
部署完成後,您可以導航到admin gui中的項目,然後單擊指向查看端點的鏈接。在下一個窗口中你可以任意點擊一個鏈接指向產生WSDL
或到tester
- 您可以通過編寫自己的客戶端提供的,或者你可以使用this一個更通用的方法教程以下。
- 使用soapUI測試(它可作爲獨立應用程序或作爲IDE插件)
我希望這helpes,玩得開心!