泽西岛你好世界什么都没有

时间:2015-07-15 15:44:52

标签: java rest maven intellij-idea jersey

我是使用泽西岛的休息网络服务的新手(tomcat

我有一个HelloWorld来源:(在RestApp包中)

package com.ss.hh;
...

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

    @GET
    @Produces(MediaType.TEXT_PLAIN)
    public String getMessage(){
        return "Hello jersey";
    }
}

这是web.xml

<servlet>
    <servlet-name>jersey-serlvet</servlet-name>
    <servlet-class>
        com.sun.jersey.spi.container.servlet.ServletContainer
    </servlet-class>

    <init-param>
        <param-name>com.sun.jersey.config.property.packages</param-name>
        <param-value>com.ss.hh</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>jersey-serlvet</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>

pom.xml

<dependency>
    <groupId>org.glassfish.jersey.core</groupId>
    <artifactId>jersey-server</artifactId>
    <version>2.19</version>
</dependency>

<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-servlet</artifactId>
    <version>1.19</version>
</dependency>

为什么我无法在Hello jersey中收到http://localhost:8080/hello消息?

更新

我将jersey-servlet替换为jersey-container-servlet-core文件并更改了web.xml配置,如下所示:

<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.packages</param-name>
        <param-value>com.ss.hh</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>Jersey REST Service</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>

但它没有显示任何内容:http://localhost:8080/FirstRestApp/hello

FirstRestApp是项目名称。

2 个答案:

答案 0 :(得分:1)

在网址中添加根上下文路径:

尝试http://localhost:8080/FirstRestApp/hello

更新:

我通过一些修改完全按照您的意愿创建了一个小项目,它对我来说很好..

https://github.com/darsh9292/FirstRestApp

答案 1 :(得分:1)

如果你的IDE是intellij IDEA,你应该尝试这个网址:

http://localhost:8080/hello

(没有项目名称)