2017-08-10 69 views
-2

我正嘗試在Maven Java項目中使用球衣創建REST api。但我似乎總是從服務器獲得404響應。Java球衣世界的回報404

這是我的java類:

@Path("/login") 
public class LoginController { 
    @GET 
    @Path("/hello") 
    @Produces("text/plain") 
    public String hello() { 
     return "Hello world"; 
    } 
} 

很簡單。

我的web.xml文件看起來像這樣:

<!DOCTYPE web-app PUBLIC 
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" 
"http://java.sun.com/dtd/web-app_2_3.dtd" > 

<web-app> 
    <display-name>REST API</display-name> 

    <servlet> 
    <servlet-name>jersey-servlet</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-servlet</servlet-name> 
    <url-pattern>/ws/*</url-pattern> 
    </servlet-mapping> 

</web-app> 

這是我的pom.xml的樣子:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>se.example</groupId> 
    <artifactId>rest</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>war</packaging> 
    <name>Rest Maven Webapp</name> 
    <dependencies> 

    <dependency> 
     <groupId>com.sun.jersey</groupId> 
     <artifactId>jersey-bundle</artifactId> 
     <version>1.19.1</version> 
    </dependency> 
    </dependencies> 
</project> 

但是當我嘗試在我的瀏覽器中打開http://localhost:8080/rest/ws/login/hello。我剛剛得到一個404響應。

我錯過了一些明顯的東西嗎?

這是穩定
+0

什麼是您的應用程序服務器? – stdunbar

回答

0

使用最新新澤西捆綁2.25.1

附加休耕的依賴,然後再試一次

<dependency> 
    <groupId>org.glassfish.jersey.containers</groupId> 

    <artifactId>jersey-container-servlet</artifactId> 
    <version>2.7</version> 
    </dependency> 

如果它不工作

使用maven命令行來創建應用程序和比較配置

mvn archetype:generate -DarchetypeArtifactId=jersey-quickstart-webapp \ 
      -DarchetypeGroupId=org.glassfish.jersey.archetypes -DinteractiveMode=false \ 
      -DgroupId=com.example -DartifactId=simple-service-webapp -Dpackage=com.example \ 
      -DarchetypeVersion=2.25.1