【问题标题】:Getting 404 error with TOMCAT-Jersey RestTOMCAT-Jersey Rest 出现 404 错误
【发布时间】:2015-01-25 16:28:19
【问题描述】:

我正在使用 JERSEY2.15:-

java类:-

package packages.newJersey;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

@Path("/rest")
public class SimpleWebService {

    private static String versions = "4.1";

    @GET
    @Produces(MediaType.TEXT_HTML)
    public String simpleMessage() {

        return "<p>This is a simple REST</p>";

    }

    @Path("/version")
    @GET
    @Produces(MediaType.TEXT_HTML)
    public String version() {

        return "<p>Version Number:</p> " + versions;

    }
}

web.xml:-

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://java.sun.com/xml/ns/javaee"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
    id="WebApp_ID" version="3.0">
    <display-name>LatestJersey</display-name>
    <servlet>
        <servlet-name>Jersey REST Service</servlet-name>
        <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
        <init-param>
            <param-name>jersey.config.server.provider.package</param-name>
            <param-value>packages.newJersey</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>Jersey REST Service</servlet-name>
        <url-pattern>/hello/*</url-pattern>
    </servlet-mapping>
</web-app>

即使我使用显示名称作为:-LatestJersey

默认情况下,tomcat 是打开的:- http://localhost:8080/RESTFULServiceWithLatestJersey/

当我击中时:- http://localhost:8080/RESTFULServiceWithLatestJersey/hello/rest

我收到 404 错误

有人可以帮我吗?

【问题讨论】:

  • 返回 404 错误的确切消息是什么?还请提供从 tomcat home 到 SimpleWebService.class 的路径。

标签: java rest tomcat jersey


【解决方案1】:

一切看起来都不错,除了这个

jersey.config.server.provider.package

应该是

jersey.config.server.provider.packages  

你错过了s

【讨论】:

  • 工作中,谢谢!!!,但是你能告诉我这个 jersey.config.server.provider.packages 是什么以及为什么我在这里使用它
  • 它只是您可以设置的许多可能的 Jersey 配置之一。这个特定的列表列出了 Jersey 应该为您的资源和提供者扫描的包。由于您拼写错误,因此从未设置实际属性,因此永远不会扫描包并且永远不会加载资源。因此找不到 404
猜你喜欢
  • 2015-06-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-02
  • 2016-11-21
  • 1970-01-01
  • 1970-01-01
  • 2018-02-04
  • 2013-07-16
相关资源
最近更新 更多