2015-06-26 115 views
0

我正在使用Netbeans 8.1Netbeans Maven REST Web服務不工作

我正在嘗試創建一個REST Web服務。最初,我按照步驟從教程中創建Netbeans。 現在,我正在嘗試創建一個maven項目,但它不工作。 我創建了一個新的Maven Java Web應用程序,並將java文件複製到maven項目中。現在,當我訪問URL時,我收到了404。

該項目部署在Glassfish srver中,但服務器將該項目描述爲web而不是web, webservices

即使部署了項目,SOAPUI和Postman也會引發404。

回答

2

在IDE等Eclipse或Netbeans中創建任何項目時,可能會有一些依賴項從IDE提供給應用程序。因此,當您使用maven時,需要在應用程序所需的每個jar文件的pom.xml中添加依賴項。首先,檢查您的pom文件。

另一個原因可能是web.xml丟失。如果不存在則添加該文件,幷包含帶有URL模式的servlet。

例如,如果你正在使用jersy,將web.xml

<web-app id="WebApp_ID" version="2.4" 
xmlns="http://java.sun.com/xml/ns/j2ee" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> 
<display-name>Restful Web Application</display-name> 

<servlet> 
    <servlet-name>jersey-serlvet</servlet-name> 
    <servlet-class> 
       com.sun.jersey.spi.container.servlet.ServletContainer 
    </servlet-class> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

<servlet-mapping> 
    <servlet-name>jersey-serlvet</servlet-name> 
    <url-pattern>/rest/*</url-pattern> 
</servlet-mapping> 
</web-app> 

如果Web的applcation只有Web服務(或)如果不需要其他servlet映射,<url-pattern/>可以像<url-pattern>/*</url-pattern>

+1

Netbeans未包含web.xml。在WEB-INF文件夾內添加web.xml文件後問題解決 – MeVenk