У меня есть веб-проект java, содержащий такие классы ресурсов JAX-RS:
@Stateless
@Path("user")
public class UserResource {
@EJB
BooksResource booksResource;
...
@GET
public String get() {
return "User Resource";
}
@Path("books")
public BooksResource getBooksResource() {
System.out.println("booksResource is " + booksResource);
return booksResource;
}
...
}
@Stateless
public class BooksResource {
@GET
public String get() {
return "Books Resource";
}
}
Evething отлично работает, когда я запускаю проект WAR.
Но когда я добавляю его в проект EAR, я могу получить доступ только к /user. И /user/books возвращает 404, а консоль выводит «booksResource is null».
Кажется, что EJB не внедряется при запуске в проекте EAR, но почему он работает в проекте WAR?
Я использую Eclipse (индиго JavaEE) и Glassfish3.1.2.
@LocalBeanна BooksResource - person Jin Kwon   schedule 09.08.2012