2017-08-10 12 views
-2

maven javaプロジェクトでジャージーを使用してREST APIを作成しようとしています。しかし、私はいつもサーバーから404応答を受け取っているようです。非常にシンプルJavaジャージーhello world returns 404

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

は、これは私のJavaクラスです。

私の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

は休閑依存関係を追加し、それが

は、Mavenのコマンドラインを使用してアプリケーションを作成し、設定を比較動作しない場合は、再び

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

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

を試す安定している

利用ジャージー最新のバンドル2.25.1

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