使用Jersey在Java中运行简单的RESTful Web服务时的HTTP状态404

时间:2016-05-12 05:27:55

标签: eclipse web-services rest jersey tomcat8

使用Jersey在Java中运行简单的RESTful Web服务时,我得到HTTP Status 404。我正在关注教程REST with Java (JAX-RS) using Jersey。我已将我从Jersey download site下载的所有罐子复制到我项目的 WEB-INF / lib 文件夹中(请参阅罐子的截图)。

当我从eclipse开发环境运行应用程序时, Eclipse控制台显示Tomcat已成功启动。我的网络应用程序已部署,我可以看到index.html即将推出。但点击http://localhost:8080/com.kj.rest.jersey.first/会给出Http状态404。

我的环境:

  • Spring Tool Suite作为我的eclipse开发环境
  • 泽西岛2.22.2罐子
  • Apache Tomcat v8.0

请注意我在项目中使用Maven ,我也在这里查看了其他类似的问题,但没有一个能解决我的问题。

我缺少什么,我应该在哪里查找哪个日志问题?

enter image description here

2 个答案:

答案 0 :(得分:0)

 <servlet>
    <servlet-name>Jersey REST Service</servlet-name>
    <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
     <!-- Register resources and providers under com.vogella.jersey.first package. -->
    <init-param>
        <param-name>jersey.config.server.provider.packages</param-name>
        <param-value>com.*******</param-value>
    </init-param>

    <load-on-startup>1</load-on-startup>

  </servlet>
  <servlet-mapping>
    <servlet-name>Jersey REST Service</servlet-name>
    <url-pattern>/rest/*</url-pattern>


  </servlet-mapping>

答案 1 :(得分:0)

我犯的错误是没有在URL中指定服务名称(由@Path注释指定)。这样做之后就有效了。

基本上,要点击的网址应为http://localhost:8080/com.kj.rest.jersey.first/rest/path_from_rest_class,我之前错过了path_from_rest_class