WebSphere 바인딩을 사용하여 메시지 구동 Bean JNDI 이름 정의

메시지 구동 디스크립터는 메시지 리스너의 목적지를 구성합니다. 메시지 목적지 참조는 메시지 목적지로 작용하는 EJB 모듈의 엔터프라이즈 Bean을 찾는데 사용되는 논리 이름입니다. 메시지 목적지 참조는 다음과 같은 J2EE 버전 1.4 이상의 아티팩트에만 존재합니다.

다중 메시지 목적지 참조가 단일 메시지 목적지 링크에 연관되는 경우, 메시지 목적지 링크에 맵핑된 후 링크된 모든 메시지 목적지 참조에 맵핑되는 엔터프라이즈 Bean의 단일 JNDI 이름이 배치 중에 수집됩니다. 런타임 시, 메시지 목적지 참조는 대상 조작 환경에서 관리 메시지 목적지에 바인드됩니다. 메시지 목적지 참조 및 메시지 구동 Bean이 동일한 메시지 목적지로 링크되는 경우, 참조 및 Bean에 동일한 목적지 JNDI 이름이 있어야 합니다. 동일한 이름이 있는 경우, 메시지 구동 Bean의 목적지 JNDI 이름만 수집되고 해당 메시지 목적지 참조에 적용됩니다. 애플리케이션 설치 중 배치자가 기본 바인딩을 생성하도록 선택하는 경우, 설치 마법사는 다음의 불완전한 메시지 목적지 참조에 JNDI 이름을 지정합니다.
메시지 대상 참조에 < message-destination-link>가 있는 경우 JNDI 이름은 다음과 같이 설정됩니다. ejs/message-destination-linkName . 그렇지 않으면, JNDI 이름이 다음으로 설정됩니다. eis/message-destination-refName .

이 규칙은 메시지 구동 Bean의 목적지 JNDI 이름을 발견합니다. 자동화된 수정은 대상 JNDI 이름을 다음에서 복사합니다 weblogic-ejb-jar.xml 파일에서 WebSphere(R ) 애플리케이션 서버 바인딩 파일에 복사됩니다. 그러나 자동화된 수정은 ActivationSpec JNDI 이름을 설정하거나 ejb-jar.xml 에서 활성화 구성 속성을 마이그레이션하지 않습니다.

Liberty의 수동 솔루션


WebSphere traditional의 수동 솔루션

애플리케이션 개발자는 EJB 3.0의 ibm-xxx-bnd.xml 및 Web 2.5 모듈 그리고 Java(R) 플랫폼, Enterprise Edition(Java EE) 5 이전에 존재했던 모듈의 ibm-xxx-bnd.xmi 파일에 바인딩 정의를 작성할 수 있습니다. 애플리케이션 개발자는 IBM(R) Rational(R) 개발자 도구와 같은 도구를 사용하거나 EJB 3.0 또는 Web 2.5 모듈의 경우, XML 편집기 또는 문서 편집기를 사용하여 파일을 작성할 수 있습니다. 그런 다음, 개발자는 애플리케이션 어셈블러 또는 배치자에 바인딩으로 완료된 엔터프라이즈 애플리케이션(.ear file)을 제공합니다. 애플리케이션을 어셈블링하면 어셈블러는 바인딩을 수정하지 않습니다. 이와 유사하게, WebSphere Application Server로 지원되는 서버에 애플리케이션을 설치하는 경우 바인딩에 대한 변경사항이 애플리케이션의 성공적인 배치에 필요하지 않으면 배치자는 바인딩을 수정 또는 대체하지 않거나 기본 바인딩을 생성하지 않습니다.

EJB 2.1 Bean용 Rational Application Developer에 필수 변경사항을 적용하려면, 다음 조치를 완료하십시오.
  1. 어셈블리 도구 Rational Application Developer를 시작하십시오.
  2. 올바른 EJB 프로젝트를 여십시오.
  3. 배치 디스크립터를 두 번 클릭하십시오.
  4. 올바른 메시지 구동 Bean을 클릭하십시오.
  5. WebSphere 바인딩 섹션으로 화면이동하십시오.
  6. JCA 어댑터 선택란을 체크한 후 ActivationSpec JNDI 이름을 입력하십시오.


EJB 2.0 Bean용 관리 콘솔에 필수 변경사항을 적용하려면 다음 조치를 완료하십시오. Rational Application Developer 버전 7.0은 EJB 2.0 Bean용 EJB 2.1 활성화 스펙 설정을 지원하지 않습니다. EJB 2.1 Bean용 EJB 2.1 활성화 스펙만 설정할 수 있습니다.
  1. WebSphere Application Server에 대한 애플리케이션을 배치하는 경우, 관리 콘솔을 사용하여 MDB의 활성화 스펙을 설정하십시오.
  2. 관리 콘솔에서 애플리케이션의 EAR 파일을 내보내십시오.
  3. 올바른 활성화 스펙을 갖도록 EAR 파일의 배치 디스크립터를 프로젝트로 복사하십시오.

애플리케이션 어셈블 중에 바인딩 정의

애플리케이션 어셈블러는 애플리케이션의 어노테이션 또는 배치 디스크립터에 바인딩을 정의할 수 있습니다. Java EE 5 모듈에는 소스 코드의 어노테이션이 있습니다. 어노테이션을 선언하기 위해, 애플리케이션 어셈블러는 @ 문자가 있는 키워드 앞에 놓입니다. Java EE 5 모듈 이전의 바인딩은 배치 디스크립터 편집기의 WebSphere 바인딩 섹션에 지정됩니다. 배치 디스크립터를 수정하면 애플리케이션을 개발할 때 작성되는 바인딩 파일의 바인딩 정의를 변경합니다. 바인딩을 정의한 후 어셈블러는 배치자에게 애플리케이션를 제공합니다. WebSphere Application Server로 지원되는 서버에 애플리케이션을 설치하는 경우, 바인딩에 대한 변경사항이 애플리케이션을 배치하는데 필요하지 않으면 배치자는 바인딩을 수정 또는 대체하지 않거나 기본 바인딩을 생성하지 않습니다.


애플리케이션 설치 중에 바인딩 정의

관리 콘솔을 사용하여 WebSphere Application Server로 지원되는 서버에 애플리케이션을 설치하는 경우, 애플리케이션 배치자 또는 서버 관리자는 바인딩을 수정할 수 있습니다. 새 바인딩 정의는 설치 마법사 페이지에서 지정할 수 있습니다.
또한 배치자 또는 관리자는 애플리케이션 설치 중에 기본 바인딩을 생성하도록 선택할 수도 있습니다. 애플리케이션 설치 중에 기본 바인딩을 생성하도록 선택하면 제품이 애플리케이션의 바인딩에 기본값을 완료하도록 지시합니다. 기존 바인딩은 변경되지 않습니다.
제한사항: 애플리케이션 클라이언트의 애플리케이션 설치 중에 바인딩을 정의하거나 대체할 수 없습니다. 어셈블리 중에 애플리케이션 클라이언트 모듈의 바인딩을 정의하고 이 바인딩을 바인딩 파일에 저장해야 합니다.


애플리케이션 설치 구성 중 바인딩 정의

WebSphere Application Server로 지원되는 서버에 애플리케이션을 설치하는 경우, 애플리케이션 배치자 또는 서버 관리자는 관리 콘솔 페이지의 값을 변경하여 바인딩을 수정할 수 있습니다(예: 엔터프라이즈 애플리케이션의 설정 페이지에서 액세스).