2015-01-14 2 views
0

JBoss Wildfly에서 간단한 EJB 프로젝트를 구축하려고합니다.
스테이트리스 EJB가 JAX-RS 리소스 클래스가되기를 원합니다. 이 REST 서비스는 데이터베이스에 저장된 Person 엔티티를 리턴해야한다.

EJB-코드 : ': 8080/휴식/사람 localhost를'JaxRS : REST URL에 연결할 수 없습니다. 잘못 구성 되었습니까?

@Stateless 
@Path("/person") 
public class PersonServiceBean { 

    @PersistenceContext EntityManager em; 

    @GET 
    @Produces(MediaType.APPLICATION_JSON) 
    public List<Person> getAllPersons(){ 
     return em.createQuery("FROM " + Person.class.getName()).getResultList(); 
    } 

} 

나는

@ApplicationPath("/rest") 
public class JaxRsApplication extends Application { 

    @Override 
    public Set<Class<?>> getClasses() { 
     return new HashSet<Class<?>>(Arrays.asList(PersonServiceBean.class)); 
    } 

} 

하지만 여전히 나는에서 404 얻을 내가 ApplicationPath 인자 - 주석과 응용 프로그램의 서브 클래스를 필요로 읽습니다.
설정을 잊어 버렸습니까?

정말 도움에 감사 할 것입니다!

답변

2

나머지 리소스는 EJB 프로젝트가 아닌 WAR에 있어야한다는 점이 문제입니다.

+0

감사합니다. 내가 읽은 기사를 놓친 것 같아. http://stackoverflow.com/questions/3027834/inject-a-ejb-into-jax-rs-restfull-service에서 Pascal Thivent의 답변 중 두 번째 옵션으로 그는 @Statelessi JAX-RS 리소스 클래스에 주석을 답니다. 어쨌든 이것은 EJB를 내가 잘못 이해 한 EJB로 만들지 않습니다. –

관련 문제