【问题标题】:HTTP Status 404 error in Rest WS conceptRest WS 概念中的 HTTP 状态 404 错误
【发布时间】:2017-11-28 09:23:26
【问题描述】:

我只是带有hello world 程序的Rest API 概念。我正在关注一些教程视频并尝试相同的程序但我没有得到预期的结果。

这是我的Book.java

package com.book;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

@Path("/book")      //URI
public class Book {

    @GET
    @Produces(MediaType.TEXT_XML)
    public String sayHelloXML() {
        String response = "<?xml version='1.0'?>" + "<hello>Hello World</hello>";
        return response;
    }

}

还有web.xml

<?xml version="1.0" encoding="UTF-8"?>
<element>
    <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" version="3.0">
      <display-name>WSdemo</display-name>
      <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>default.html</welcome-file>
        <welcome-file>default.htm</welcome-file>
        <welcome-file>default.jsp</welcome-file>
      </welcome-file-list>

      <servlet>
      <servlet-name>JAVA WS</servlet-name>
      <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>

      <init-param>
            <param-name>jersey.config.server.provider.packages</param-name>
            <param-value>book</param-value>
      </init-param>

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

      <servlet-mapping>
            <servlet-name>JAVA WS</servlet-name>
            <url-pattern>/*</url-pattern>
      </servlet-mapping>

    </web-app>
</element>

我正在使用Tomcat v8.0 服务器。 但是当我运行应用程序时,我会以

谁能给我一些学习 RESTfull Web 服务概念的关键点子?

【问题讨论】:

标签: java web-services rest web.xml


【解决方案1】:

web.xml中应该有正确的配置

我已经编辑了我的 web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!-- <element> -->
    <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" version="3.0">
      <display-name>WSdemo</display-name>
      <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>default.html</welcome-file>
        <welcome-file>default.htm</welcome-file>
        <welcome-file>default.jsp</welcome-file>
      </welcome-file-list>

      <servlet>
      <servlet-name>JAVA WS</servlet-name>
      <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>

      <init-param>
            <param-name>jersey.config.server.provider.packages</param-name>
            <param-value>com.book</param-value>
      </init-param>

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

      <servlet-mapping>
            <servlet-name>JAVA WS</servlet-name>
            <url-pattern>/*</url-pattern>
      </servlet-mapping>

    </web-app>
<!-- </element> -->

我得到了正确的输出

谢谢。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-18
    • 2018-11-18
    • 2014-10-24
    • 1970-01-01
    • 1970-01-01
    • 2021-06-19
    • 2015-08-29
    • 1970-01-01
    相关资源
    最近更新 更多