Корневой ресурс JAX-RS определяется аннотацией @Path
и может использовать управляемые компоненты для выполнения фактической работы, например:
@Path("resource")
public class Resource
{
@Inject
Worker worker;
@GET
public String getDetails() {
return worker.getDetails();
}
}
Теперь я могу передать этот корневой ресурс JAX-RS.либо к бину CDI:
@RequestScoped
@Path("resource")
public class Resource {...}
, либо к EJB:
@Stateless
@Path("resource")
public class Resource {...}
Итак, каковы последствия того, что вы делаете это POJO, CDI или EJB?Снаружи запрос к URL доставляет три раза одно и то же, но что происходит под капотом и как внедренные компоненты связаны с каждым случаем?