让我试着回答你的问题:
首先:您不需要需要知识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,玩得开心!