주제

소개 페이지 맨 위

이 가이드라인 페이지는 J2EE 모듈의 어셈블리에 초점을 둡니다.

다음 구현 요소에서 J2EE 모듈 결과를 어셈블리하십시오.

  • J2EE 아카이브(WAR, EJB-JAR 및 JAR 파일)
  • 아카이브 컨텐츠를 설명하고 포함된 컴포넌트가 전개 컨테이너에서 기능하게 하려는 방식을 설명하는 전개 설명자(XML 파일)

J2EE 모듈에 대한 자세한 정보는 가이드라인: J2EE 모듈을 참조하십시오.

아카이브 정의페이지 맨 위

이 단계에서 어플리케이션 컴포넌트 제공업체는 모듈에 패키지되어야 할 컴포넌트를 식별합니다.

다른 목적으로 여러 아카이브를 생성할 수 있습니다. 예를 들어, 테스트, 디버깅 또는 다른 "프로덕션" 전개 형상으로 전달하기 위해 아카이브를 분리하십시오. 테스트 아카이브는 테스트 클래스와 디버그 플래그로 빌드된 클래스를 포함하지만, 프로덕션 아카이브는 테스트 클래스를 포함하지 않으며 디버그 플래그로 빌드되지 않습니다. 어셈블 중인 의도한 아카이브 컨텍스트는 설정된 어셈블리 작업공간에 영향을 미칩니다.

전개 설명자 정의페이지 맨 위

J2EE 모듈 어셈블의 핵심 단계는 전개 설명자를 정의하는 것입니다. 이 정보 중 대부분은 각 컴포넌트의 설계에서 캡처되었으므로 전개 설명자를 정의하는 것이 설계에서 일관성을 크게 보장하는 것입니다. 라운드 트립 엔지니어링을 사용 중인 경우, 전개 설명자를 생성하기 위한 툴 지원도 있을 수 있습니다.

각 아카이브는 J2EE 표준 전개 설명자와 0개 이상의 벤더 고유의 설명자를 포함합니다. 표준 설명자, EJB-JAR의 경우 ejb-jar.xml, WAR의 경우 web.xml은 테스트 및 기타 "비프로덕션" 전개를 위해 완료해야 하는 섹션과 프로덕션 전개를 위해 최종 어플리케이션 어셈블러에서 준비하는 섹션을 포함합니다.

각 설명자는 어플리케이션 어셈블러는 물론, 어플리케이션 컴포넌트 제공업체에 대한 관심 정보를 포함합니다. 예를 들어, ejb-jar.xml에는 세 개의 주요 섹션(설명용)이 있습니다(<enterprise-beans>...</enterprise-beans>, <relationships>...</relationships> <assembly-descriptor>...</assembly-descriptor>). 어플리케이션 컴포넌트 제공업체는 <enterprise-beans>...</enterprise-beans> 섹션에서 CMP 필드와 같은 EJB의 특성을 정의합니다. 또한 어플리케이션 컴포넌트 제공업체는 <relationships>...</relationships> 섹션에서 EJB 간의 선택적 관계를 정의합니다. <assembly-descriptor>...</assembly-descriptor> 섹션은 트랜잭션, 보안 역할, 메소드 권한 등이 정의된 곳입니다. 보통 어플리케이션 어셈블러만이 이 섹션에 대해 고심합니다. 어셈블러는 다른 두 개의 섹션 컨텐츠를 수정하도록 결정할 수 있지만, 이것은 일반적이지 않습니다. WAR 아카이브의 상황과 비슷합니다. 어플리케이션 어셈블리에 대한 자세한 정보는 가이드라인: J2EE 어플리케이션 어셈블을 참조하십시오.

설계 중, 데이터 모델 및 CMP(Container-Managed Persistent) 엔티티 EJB에서 데이터베이스 테이블 간에 맵핑을 정의한 경우, 이 맵핑은 벤더 고유의 설명자에서 맵핑 지시문에 반영되어야 합니다(맵핑 지시문은 표준 EJB 설명자의 파트가 아님). CMP 엔티티 EJB를 데이터베이스 테이블에 맵핑하는 것에 대한 자세한 정보는 가이드라인: 엔티티 Bean 설계를 참조하십시오.

여러 컴포넌트가 동일한 아카이브에 패키지되는 경우(단계: 아카이브 정의 참조), 어플리케이션 컴포넌트 제공업체가 전개 설명자 정보를 통합해야 합니다. 예를 들어, EJB를 하나의 EJB-JAR로 결합할 때, 어플리케이션 컴포넌트 제공업체는 보안 역할 및 상호 참조와 같은 전개 설명자의 정보를 조화시켜야 합니다.

아카이브 유효성 검증페이지 맨 위

특히 어플리케이션 서버측에서 모호한 오류가 모호하거나 존재하지 않는 오류 메시지를 초래할 수 있을 때, 전개하기 전에 아카이브 컨텐츠의 유효성을 검증하는 것이 좋습니다. 예를 들어, 중복된 JNDI 이름은 아카이브에 패키지된 컴포넌트 중 어디에서도 사용될 수 없습니다.



Rational Unified Process   2003.06.15