Загрузка ресурсов с помощью аннотации Jersey и @ApplicationPath
Я пытаюсь развернуть базовую службу Jersey restful для Tomcat7 без интернета.xml:
@WebServlet(loadOnStartup=1)
@ApplicationPath("resources")
@Path("/mypath/{name}")
public class MyResource extends Application {
@Override
public Set<Class<?>> getClasses() {
Set<Class<?>> s = new HashSet<Class<?>>();
s.add(MyResource.class);
return s;
}
@GET
@Consumes("text/plain")
@Produces("text/plain")
public String getWelcome(@PathParam(value = "name") String name) {
return "Welcome to jax-rs " + name;
}
}
Мне представляется 404 при попытке доступа: /myapplication/resources/mypath/sample.
Я могу развернуть сервлет, используя аннотацию @WebServlet
, поэтому это не имеет ничего общего с загрузкой сервлетов без web.xml в Tomcat7.
Из чтения документации для Джерси, среда выполнения должна сканировать классы расширения Application
и выполнить getClasses()
, загружая все корневые файлы ресурсы.