Java RESTfulWebService不响应

Java RESTfulWebService不响应,java,web-services,Java,Web Services,我不熟悉web服务编程,并且遇到了麻烦。在网上搜索了两天之后,我完全糊涂了,我的例子没有提供任何数据给我 我想编写一个应该在Tomcat7或glassfish 4上运行的restful web服务 这是我的代码: SimpleService.class @Path("say") public class SimpleService { @Path("hello") @GET public String doGreet() { return "Hello

我不熟悉web服务编程,并且遇到了麻烦。在网上搜索了两天之后,我完全糊涂了,我的例子没有提供任何数据给我

我想编写一个应该在Tomcat7或glassfish 4上运行的restful web服务

这是我的代码:

SimpleService.class

@Path("say")
public class SimpleService {

    @Path("hello")
    @GET
    public String doGreet() {
        return "Hello Stranger, the time is "+ new Date();
    }
}
web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1">
  <display-name>test002</display-name>
  <servlet>
    <servlet-name>Jersey Web Application</servlet-name>
    <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>Jersey Web Application</servlet-name>
    <url-pattern>/you/*</url-pattern>
  </servlet-mapping>
</web-app>

测试002
Jersey Web应用程序
org.glassfish.jersey.servlet.ServletContainer
1.
Jersey Web应用程序
/你/*

http://localhost:8070/test002/you/say/hello上的请求得到404

我的建议。在Tomcat上部署应用程序,并检查应用程序是否正在使用Tomcat manager应用程序运行

确保在URL路径中使用WAR文件的确切名称:

http://localhost:8070/<Name of WAR-file>/you/say/hello
作为servlet类

从url模式和使用的url中删除

使用返回的数据对服务方法进行注释也不是一个坏习惯,在您的情况下,它是纯文本:

@Produces(MediaType.TEXT_PLAIN)
SimpleService不需要实现接口。看起来是对的


如果它对Tomcat起作用,那么让它对Glassfish起作用就不难了。

您必须在服务中配置完整的资源路径:

SimpleService.class


也许最好从头开始:如果Maven不是一个选项,那么创建Maven项目并在Eclipse中加载它。然后将类路径设置和“maven依赖项”复制到您自己的项目中


如果你知道哪里出了问题,可以把它贴在这里,这样其他人可以从中受益。

你把你的服务映射到/you/*上,但你试着在rest上调用它。请更改此项。似乎您的URL映射错误。。您已将jersey servlet映射到/You/*pattern,很抱歉出现此错误。我打电话给localhost:8070/test002/you/say/hello,得到了404。编辑了问题。启动此应用程序时,您是否在服务器日志中看到任何错误?这里有一点:SimpleService未实现javax.xml.ws.Provider接口-这意味着什么?在一些文档中,提供程序接口是可选的。我想我的问题是,在部署新版本进行测试后,我没有重新加载/重新启动服务器。我转而使用jboss,因为它提供了我所需要的所有lib,同时我设法使用maven启动并运行了我的项目。很酷的东西;)谢谢大家的帮助。它现在正在运行!
@Produces(MediaType.TEXT_PLAIN)
@Path("/you/say")
public class SimpleService {

    @Path("/hello")
    @GET
    public String doGreet() {
        return "Hello Stranger, the time is "+ new Date();
    }
}