메시지 구동 Bean 작성

엔터프라이즈 Bean 작성 마법사를 사용하면 EJB 2.x 메시지 구동 Bean을 작성할 수 있습니다.

이 태스크 정보

메시지 구동 Bean은 JMS(Java™ Message Service)로부터의 비동기 메시지 처리를 지원하기 위해 EJB 2.0에서 소개되었습니다. EJB 2.1 스펙은 JMS뿐만 아니라 모든 메시지 전달 시스템을 지원할 수 있도록 메시지 구동 Bean의 정의를 확장합니다. 따라서 메시지 구동 Bean을 정의하는 데 사용되는 배치 디스크립터 요소가 EJB 2.1 스펙에서 변경되었습니다. EJB 2.1 메시지 구동 Bean을 작성하는 마법사에는 선택적으로 비JMS 메시지 전달 시스템 및 활성화 구성 요소를 정의하는 추가 페이지도 있습니다.

메시지 구동 Bean 배치 디스크립터 예제에서 EJB 2.0 및 EJB 2.1 스펙의 메시지 구동 Bean에 대한 배치 디스크립터 항목 예제를 참조하십시오.

프로시저

  1. Java EE 퍼스펙티브에서 파일 > 새로 작성 > 기타를 클릭하십시오. EJB > 엔터프라이즈 Bean(1.x-2.x)을 선택하고 다음을 클릭하십시오. 또는 EJB 프로젝트를 마우스 오른쪽 단추로 클릭하고 새로 작성 > 엔터프라이즈 Bean(1.x-2.x)을 클릭하십시오.
  2. 메시지 구동 Bean을 선택하십시오.
  3. Bean을 추가할 EJB 프로젝트를 선택하십시오. EJB 2.0 또는 EJB 2.1 프로젝트를 선택할 수 있습니다.
  4. Bean 이름 필드에서 엔터프라이즈 Bean에 지정할 이름을 입력하십시오. 규정 상, Bean 이름은 대문자로 시작해야 합니다.
    참고: Bean 이름에 유니코드 문자를 사용할 수 있지만, 엔터프라이즈 Bean 패키지 및 엔터프라이즈 Bean과 연관된 클래스에서는 유니코드 문자를 지원하지 않습니다.
  5. 소스 폴더 필드에서 새 Bean의 소스 폴더를 선택하십시오.
  6. 기본 패키지 필드에 새 Bean의 패키지 이름을 입력하십시오.
  7. 옵션: 어노테이션이 있는 Bean 클래스를 생성함을 선택할 수 있습니다. 이 옵션을 선택하면 마법사가 Bean 클래스의 Java 코드 처음에 어노테이션을 생성합니다. 어노테이션은 마법사에 지정한 Bean의 구현을 정의합니다. 그런 다음 EJB 도구에서 어노테이션을 사용하여 필요한 Bean 클래스를 생성하고 EJB 배치 디스크립터(ejb-jar.xml)에 삽입된 값을 제공합니다. 어노테이션에 익숙하며 배치 디스크립터를 사용하지 않고 어노테이션을 사용하여 Bean을 업데이트하려면 이 옵션을 선택하십시오. 이 옵션을 선택한 경우 다른 옵션을 사용할 수 없습니다.

    자세한 정보는 다음을 참조하십시오. 어노테이션 기반 프로그래밍 개요.

  8. 다음을 클릭하십시오.
  9. EJB 2.1 메시지 구동 Bean의 경우(EJB 2.0 Bean을 작성하는 경우 10 단계로 건너뜀) 다음을 지정하십시오.
    1. 메시지 구동 Bean에 사용할 메시지 전달 서비스를 지정하십시오.
      • JMS 유형: javax.jms.MessageListener 클래스를 리스너 유형으로 사용하여 JMS 메시지 전달 서비스를 사용하려면 이 옵션을 선택하십시오.
      • 기타 유형: 비JMS 또는 사용자 정의 메시지 전달 서비스를 사용하려면 이 옵션을 선택하십시오. 리스너 유형 필드에 리스너 클래스의 완전한 이름을 입력하십시오.
      다음을 클릭하십시오.
    2. 메시지 구동 Bean에 대한 세부사항을 지정하십시오.
      참고: 비JMS 메시지 전달 시스템을 사용하는 EJB 2.1 메시지 구동 Bean을 작성하는 경우 일부 옵션을 사용할 수 없지만 수동으로 활성화 구성 이름 값 쌍으로 정의할 수 있습니다.
      • 트랜잭션 유형: 컨테이너 또는 Bean이 Bean의 트랜잭션을 관리하도록 지정할 수 있습니다.
      • 활성화 구성: 이 테이블을 사용하여 추가 특성을 구성하십시오. 정의하는 각 이름 값 쌍은 <activation-config-property> 요소로 배치 디스크립터에 추가됩니다. JMS 메시지 전달을 사용하는 EJB 2.1 메시지 구동 Bean의 경우 사전정의된 특성은 다음과 같습니다.
        acknowledgeMode
        값은 Auto-acknowledgeDups-ok-acknowledge입니다.
        destinationType
        값은 javax.jms.Queuejavax.jms.Topic입니다.
        messageSelector
        값은 사용자가 지정합니다.
        추가를 클릭하여 테이블에서 추가 특성을 정의하거나 제거를 클릭하여 테이블에서 특성을 삭제하십시오.
      • 새 Bean을 동일한 EJB 프로젝트의 기존 Bean에서 상속하려면 Bean 상위 유형을 선택하십시오. EJB 프로젝트에 다른 CMP Bean이 있으면 Bean 상위 유형 드롭 다운 상자를 사용할 수 있습니다. 하위 유형은 상위 유형과 동일한 키 클래스여야 하므로 Bean 상위 유형을 선택하면 키 클래스 필드를 사용할 수 없습니다.
      • Bean 클래스: Bean 클래스의 패키지 및 클래스 이름을 입력하십시오. 기본적으로 마법사는 사용자가 정의한 Bean 및 패키지 이름에 따라 Bean 클래스를 제안합니다. Bean 클래스는 마법사가 생성하는 새 클래스이거나 프로젝트 클래스 경로에 있는 기존 클래스입니다. 클래스 단추를 클릭하여 프로젝트에서 Bean 유형에 해당하는 클래스를 나열한 유형 선택 창을 여십시오. 소스가 있는 기존 클래스의 경우 Bean 클래스의 이름이 파란색으로 표시됩니다. 기존 2진 클래스의 경우 Bean 클래스의 이름이 빨간색으로 표시됩니다.
      • 메시지 대상 링크: 찾아보기를 클릭하여 메시지 대상에 링크하십시오. 이 경우 배치 디스크립터의 Bean에 message-destination-link 요소가 추가됩니다. 어노테이션이 있는 Bean 클래스를 생성하도록 선택한 경우 메시지 대상 링크를 사용할 수 없습니다.
    3. 다음을 클릭하십시오.
    4. 옵션: Bean 수퍼 클래스 필드에서 원하는 클래스를 입력하거나 선택하십시오. Bean 상위 유형이 지정된 경우 이 필드를 사용할 수 없습니다. 다음을 클릭하십시오.
    5. 옵션: 클래스 다이어그램에 Bean 추가를 수행하려면 이 선택란을 선택하고 프로젝트의 탐색기 보기에서 클래스 다이어그램을 선택하십시오. 각 EJB 프로젝트에는 이미 작성된 기본 클래스 다이어그램이 있습니다. 새 클래스 다이어그램을 작성하려면 새로 작성을 클릭하여 새 클래스 다이어그램 마법사를 여십시오.
    6. 완료를 클릭하십시오. 새 Bean이 생성되고 배치 디스크립터에 정의됩니다.
  10. EJB 2.0 메시지 구동 Bean의 경우 다음을 지정하십시오.
    1. 메시지 구동 Bean에 대한 세부사항을 지정하십시오. : 모든 2.0 메시지 구동 Bean에는 JMS 유형 메시지 전달이 포함됩니다.
      • 트랜잭션 유형: 컨테이너 또는 Bean이 트랜잭션을 관리하도록 지정할 수 있습니다.
      • 수신확인 모드: Bean 관리 트랜잭션의 경우 세션이 수신하는 메시지를 수신확인하는 방식을 지정할 수 있습니다. 선택사항은 Auto-acknowledgeDups-ok-acknowledge입니다.
      • 메시지 구동 대상: 대상 유형으로 또는 주제를 선택하십시오.
        • 는 지점간 JMS 메시지 모델을 사용하도록 지정합니다.
        • 주제는 공개 및 구독 JMS 메시지 전달 모델을 사용하도록 지정합니다.
      • 지속성: 메시지 대상 유형을 주제로 선택한 경우 주제 구독의 지속성 여부를 지정할 수 있습니다.
        • Durable: 구독자는 JMS에서 보유하는 고유 ID를 사용하여 지속 가능한 구독을 등록합니다. 동일한 ID를 사용하는 이후 구독자 오브젝트는 이전 구독자의 상태에서 구독을 재개합니다. 지속 가능한 구독의 활성 구독자가 없는 경우 JMS는 구독 메시지를 구독에서 수신하거나 만기될 때까지 보유합니다.
        • NonDurable: 구독은 구독자 오브젝트가 활성화되어 있는 동안에만 지속됩니다. 즉, 클라이언트는 구독자가 활성화된 동안에만 주제에 공개된 메시지를 볼 수 있습니다. 구독자가 활성화되지 않았으면 클라이언트는 주제에 공개된 메시지를 볼 수 없습니다.
      • Bean 클래스: Bean 클래스의 패키지 및 클래스 이름을 입력하십시오. 기본적으로 마법사에서는 사용자가 정의한 Bean 이름 및 기본 패키지에 따라 Bean 클래스를 제안합니다. Bean 클래스는 마법사가 생성하는 새 클래스이거나 프로젝트 클래스 경로에 있는 기존 클래스입니다. 클래스 단추를 클릭하여 프로젝트에서 Bean 유형에 해당하는 클래스를 나열한 유형 선택 창을 여십시오. 소스가 있는 기존 클래스의 경우 Bean 클래스의 이름이 파란색으로 표시됩니다. 기존 2진 클래스의 경우 Bean 클래스의 이름이 빨간색으로 표시됩니다.
      • 메시지 선택기: JMS 메시지 선택기는 메시지 Bean이 수신하는 메시지를 판별하는 데 사용됩니다.
    2. 다음을 클릭하십시오.
    3. 옵션: Bean 수퍼 클래스 필드에서 원하는 클래스를 입력하거나 선택하십시오. Bean 상위 유형이 지정된 경우 이 필드를 사용할 수 없습니다. 다음을 클릭하십시오.
    4. 옵션: 클래스 다이어그램에 Bean 추가를 수행하려면 이 선택란을 선택하고 프로젝트의 탐색기 보기에서 클래스 다이어그램을 선택하십시오. 각 EJB 프로젝트에는 이미 작성된 기본 클래스 다이어그램이 있습니다. 새 클래스 다이어그램을 작성하려면 새로 작성을 클릭하여 새 클래스 다이어그램 마법사를 여십시오.
    5. 완료를 클릭하십시오. 새 Bean이 생성되고 배치 디스크립터에 정의됩니다.

다음에 수행할 작업

팁: EJB 배치 디스크립터 편집기의 Bean 페이지를 사용하여 Bean을 검토하거나 설정 또는 확장기능 및 바인딩을 추가할 수 있습니다.

피드백