带netbeans 8.2的Rest Webservice

带netbeans 8.2的Rest Webservice,netbeans,jax-ws,Netbeans,Jax Ws,我已经用Netbeans 8.2创建了一个非常基本的Java Web应用程序 以下是我所做的步骤: “文件”>“新项目”:“Java Web”>“Web应用程序” 我通过右键单击项目名称创建了一个Java类。然后新建>Java类 下面是我在这个java类中放置的内容: package pkg1; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.Produces; public class TestSe

我已经用Netbeans 8.2创建了一个非常基本的Java Web应用程序

以下是我所做的步骤:

  • “文件”>“新项目”:“Java Web”>“Web应用程序”
  • 我通过右键单击项目名称创建了一个Java类。然后新建>Java类
下面是我在这个java类中放置的内容:

package pkg1;

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

public class TestService 
{
    @Path("/test")
    @GET
    @Produces("text/plain")
    public String methode_test() 
    {
        return "Hello test";
    }
}
我没有编译问题。 GlassFish已启动,但如果我尝试转到/测试url,则会出现404错误

有什么想法吗


谢谢

为了让您的代码在Windows 10上使用NetBeans 8.2、JDK 8和Glassfish 4.1.1运行,我做了一些小改动:

  • 在类上添加
    @Path
    注释以及
    methode\u test()
  • pkg1添加名为ApplicationConfig的第二个类,该类扩展了javax.ws.rs.core.Application,如下所示
这是经修订的
TestService
类:

package pkg1;

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


@Path("/demo")
public class TestService
{
    @Path("/test")
    @GET
    @Produces("text/plain")
    public String methode_test()
    {
        return "Hello test";
    }
}
这是您需要添加的附加类:

package pkg1;

import javax.ws.rs.core.Application;

@javax.ws.rs.ApplicationPath("sample")
public class ApplicationConfig extends Application {

}
我的项目名为DemoService,因此具有DemoService的上下文根,但在您的情况下,要使用的URL可能是:

注:

  • 有关为什么需要创建扩展该应用程序的类的更多详细信息,请参见SO问题
  • 为方便起见,您可以设置测试项目时在浏览器中使用的默认路径:

    • 从项目面板中打开项目的属性窗口
    • 选择运行并根据需要设置上下文路径相对URL的值:

  • NetBeans 8.2提供了一个基本的“Hello World”REST应用程序,您可以使用项目向导在几秒钟内创建该应用程序:File>New Project…>示例>Web服务>REST:Hello World


谢谢你能告诉我这是否是JAX-RS吗?我有疑问,因为导入名为javax.wx.RS。是的,这是JAX-RS,它是“RESTfulWeb服务的JavaAPI”。如果查看,您将看到所有类和接口都位于以javax.ws.rs开头的包中,其中(大概)ws代表“web服务”,rs代表“RESTful”。