1

Eclipse で Maven と Tomcat (7.0) を使用して、単純な「Hello World」ジャージー サービスをテストしたかったのです。Maven は最新のバージョン 1.17 をダウンロードしましたが、ページにアクセスしようとするたびに 404 を取得します。ただし、バージョン 1.9 に戻すと、期待どおりに動作します。これらのバージョン間で何か変更がありましたか、それとも何か不足していますか?

私がしているlocalhost:8080/rngservice/rest/helloのは、ジャージのバージョン 9 以降を使用しているときに 404 エラーが発生する呼び出しです。ただし、バージョン 9 を使用すると、意図したとおりに動作し、HTML ページが返されます。

助言がありますか?

私のコード:

package service.test;

import javax.ws.rs.*;

@Path("/hello")
public class RNGResource {

  @GET
  @Produces(MediaType.TEXT_HTML)
  public String getItHTML() {
    return "<htm> <title> " + "Got it!" + "</title> </html>";
  }
}

web.xml は使用しませんがPackagesResourceConfig、サーブレット構成には使用します

package service.test;

import javax.ws.rs.ApplicationPath;
import com.sun.jersey.api.core.PackagesResourceConfig;

@ApplicationPath("/rest/*")
public class RNGServiceApplication extends PackagesResourceConfig {

  public RNGServiceApplication() {
   super("service.test");
  }
}

Maven .pom

<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/maven-v4_0_0.xsd">

  <modelVersion>4.0.0</modelVersion>
  <groupId>service</groupId>
  <artifactId>rngservice</artifactId>
  <packaging>war</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>rngservice</name>

  <build>
  <!-- ... -->
  </build>

  <dependencies>
    <dependency>
      <groupId>asm</groupId>
      <artifactId>asm</artifactId>
      <version>3.1</version>
    </dependency>
    <dependency>
      <groupId>javax.ws.rs</groupId>
      <artifactId>jsr311-api</artifactId>
      <version>1.1</version>
    </dependency>
    <dependency>
      <groupId>com.sun.jersey</groupId>
      <artifactId>jersey-core</artifactId>
      <version>1.17</version>
    </dependency>
    <dependency>
      <groupId>com.sun.jersey</groupId>
      <artifactId>jersey-server</artifactId>
      <version>1.17</version>
    </dependency>
  </dependencies>
</project>
4

0 に答える 0