我没有机会测试您的版本(使用web.xml),说实话,当我使用Resteasy 时,我对 xml的使用不多,所以我不会去尝试解释什么是错误的(如果有的话) )与web.xml。
但是当使用javax.xs.rs.core.Application
子类时,我们可以定义一个@ApplicationPath("/path")
注释。它使用url映射为我们的JAX-RS应用程序定义了一个servlet /path/*
。这在JAX-RS规范中指定。
您可以在第2.3.2节Configuration-Servlet
中看到有关此部署选项以及其他选项的更多信息。这是1.1规范(您正在使用2.0),但是部署选项相似。我只是找不到指向2.0的HTML链接。您可以从此处下载pdf 。
您还可以在文档中阅读有关Resteasy部署的更多信息。
但基本上,这是什么部署选项的作用是扫描的注解@Path,@Provider为应用程序等。原因是JAX-RS将首先分别在重写getClasses()和中查找类和对象getSingletons()。如果然后返回空集,这将告诉JAX-RS进行扫描(按照规范)。