WAR에서 EJB 컨테이너를 정의/실행할 때 EJB의 기능에 차이가 있습니까? 하나의 접근법과 다른 접근법을 결정할 때의 장점과 단점은 무엇입니까?WAR에서 EJB를 실행하는 것과 다른 EJB 컨테이너를 실행하는 것의 차이점
WAR에서 액세스 할 때 우리는 어떤 기능을 잃습니까?
개발자는 REST 웹 서비스 작성/액세스에 EJB를 사용하려고합니다.
우리 건축가 중 한 명이 아래에서 언급했습니다. 이런 이유 때문에 그는 EAR에 추가 될 항아리 (jar)뿐만 아니라 REST 엔드 포인트로 사용하기 위해 WAR에 추가되는 별도의 EJB를 갖기를 원합니다. 내가 여러 위치
나는 REST 서비스 구현으로 EJB를 사용하여 읽은 문서에서I’d prefer our approach to put transaction/service based code in EJBs to
leverage Container Managed Transactions, JPA, MDB and all the good stuff EJBs
have to offer.
에 그것을 가지고하지 않으려는 것, 그것은
Add the EJB class to the WEB-INF/classes directory of your WAR file or to a
JAR that is located in your WEB-INF/lib directory. When a client makes a request
to a JAX-RS annotated enterprise bean, the JAX-RS runtime environment looks up
and uses an EJB instance of the class to invoke the resource method.
그래서, 내가 알고 싶은 말한다 우리의 경우 WAR를 빌드 할 때 WEB-INF/classes에 클래스가 추가되도록 WAR 소스에 소스를 생성하는 것처럼 EJB를 WAR에 넣으십시오. 대신에 동일한 ejb jar를 두 개의 다른 위치에 두지 않아도됩니다. 어떤 용도로 사용 되는가? REST 웹 서비스 종점과 다른 기능 간에는 모든 요구 사항을 충족시킬 것인가 아니면 항아리를 두 곳에 놓아야 할 것인가?
Websphere 8.5를 EJB 3.1과 함께 사용하고 있습니다.
내 질문에 더 많은 줄이있다. 만약 내가 EJB가 WAR가 있다면, 트랜잭션, JPA 기능 등과 같은 EJB 기능을 제공 할 것인가?하지만 그것은 단지 확인을 원한다고 생각한다. – adbdkb
물론입니다. EJB-in-WAR에서는 동일한 서비스를 모두 사용할 수 있습니다. –