我一直在浏览this tutorial,他们在hashSet中添加了一个Web服务类实例,如下所示:
public class MessageApplication extends Application {
private Set<Object> singletons = new HashSet<Object>();
public MessageApplication() {
singletons.add(new MessageRestService());
}
@Override
public Set<Object> getSingletons() {
return singletons;
}
}
我不明白它的目的是什么......我以为你可以通过URL访问网络服务
答案 0 :(得分:0)
是的,您可以通过URL访问Web服务,但服务器需要知道如何处理对某个URL的调用。
你的是告诉应用服务器在哪里寻找JAX-RS资源的一种方式(引导版本):http://www.mastertheboss.com/resteasy/resteasy-tutorial(步骤#4)
有一个(更新的)替代方案,具体取决于您使用的服务器和RESTeasy版本,它依赖于自动扫描某些注释。对于JBoss上的RESTeasy,它在我链接的教程页面的底部进行了描述。
答案 1 :(得分:0)
你创建了一个类,这个类能够处理Web请求。但是这个课必须在某个地方举办。这意味着,此类必须由URL路由激活。在这种情况下,您使用的是JBOSS。
在本教程的第一个选项中,MKyong向您展示了如何配置RESTEasy Bootstrap(用于加载引用的引导程序)以将URL映射到您的类。这是在web.xml中完成的,并配置某种扫描仪,它会将某个URL映射到您的班级。
第二个选项不使用RESTEasy Bootstrap,您必须手动将类添加到应用程序中的长生命对象集合中。这样做是为了定义Application(MessageAplication)并在web.xml中定义它。