2016-10-20 2 views
1

.war 파일로 빌드하는 응용 프로그램이 있습니다. JMS 대기열을 읽는 새로운 요구 사항이 있습니다. ejb-jar.xml 파일을 추가하려고 시도했지만 메시지 수신기를 가리키고 있지만 메시지를받지 못했습니다. 배포 된 응용 프로그램이 배포 한 로그는 Message Driven Bean에 대해 아무 것도 표시하지 않습니다. .ear 구조가 모든 것과 관련이 있는지 궁금합니다..ear 파일에 메시지 구동 Bean을 전개해야합니까?

Environement : CDI가,

MyBatis로, 제이보스 9.2, 자바 1.8

당신을 감사합니다.

+0

궁금한 점은 'standalone.xml' 또는'standalone-full.xml'을 사용하여 앱을 시작하겠습니까? Wildfly 9.2, 10.1이 최신 이유는 무엇입니까? –

+0

Standalone.xml..i는이 변경 사항을 standalone-full.xml로 변경했습니다. 우리가 시작했을 때 9.2로 시작할 때 우리는 앞으로 서버를 업데이트 할 것입니다 – Zeus

답변

2

WAR 전용 배포를 지원하는 컨테이너에서 구현해야하는 EE 7 사양 구성 요소를 정의하는 Java EE 7 웹 프로필을 사용하는 것으로 보입니다.

이 프로파일은 "Enterprise JavaBeans (EJB) 3.2 Lite"사양의 요구 사항을 구현해야한다고 말합니다.

  • 무 상태, 상태, 및 싱글 세션 빈 구성 요소에만
    • 지역 비즈니스 인터페이스와 노 인터페이스보기 만
  • 컨테이너 - :

    는 EJB 라이트 사양에 대한 지원이 필요합니다 관리 트랜잭션 및 빈 관리 트랜잭션

  • 선언적 및 프로그래밍 방식의 보안
  • 인터셉터
  • 지역 비동기 세션 빈 호출
  • 비 지속적 EJB 타이머 서비스
  • 배포 기술자 지원 WAR 배포에 어떤 메시지 구동 빈 지원되지 않습니다

(EJB-jar.xml의) 거기에 지금.

따라서 두 가지 옵션이 있습니다

  1. 는 EJB 모듈 및 WAR 모듈 전체 EAR 배치에 응용 프로그램을 마이그레이션을;
  2. 메시지 구동 Bean이 웹 모듈과 완전히 분리 된 경우 독립 실행 형 EJB 모듈에 메시지 구동 Bean을 배치 할 수 있습니다. JPA 엔티티 또는 다른 라이브러리를 공유해야하는 경우 EAR을 사용하는 것이 더 쉬운 방법입니다.
+0

그러나 전쟁 배포에서 전체 Java ee 프로파일을 활성화 할 수 있습니까? – maress

+0

EAR에서 WAR를 웹 모듈로 배포하고 EJB Lite에서 지원하지 않는 구성 요소를 EAR의 추가 EJB 모듈에 추가하면됩니다. –

관련 문제