< 이전 | 다음 >

학습 3: Blueprint 구성 파일 작성

Blueprint 구성 파일에는 컴포넌트 어셈블리와 번들 구성 정보가 포함되어 있습니다. 이 파일에는 컴포넌트가 OSGi 서비스 레지스트리에 어떻게 등록되는지 또는 이러한 컴포넌트가 OSGi 서비스 레지스트리에서 서비스를 어떻게 검색하는지가 기술되어 있습니다. 이 정보는 번들이 시작될 때 필수 컴포넌트를 인스턴스화하고 구성하기 위해 런타임 시 사용됩니다. 이 학습서에서, Blueprint 파일은 학습 2에 정의되는 카운터에 기타 컴포넌트가 액세스하기 위해 사용할 수 있는 서비스를 정의합니다.

이 학습에서는 CounterServiceBundle에서 제공되는 서비스를 정의하고 설명하는 Blueprint 구성 파일을 작성합니다.

Blueprint 구성 파일을 작성하려면 다음을 수행하십시오.

  1. 프로젝트 CounterServiceBundle을 마우스 오른쪽 단추로 클릭하고 새로 작성 > Blueprint 파일을 선택하고 완료를 클릭하십시오. Blueprint 구성 파일이 편집기에서 열립니다.
  2. 컴포넌트 어셈블리 및 구성 정보를 Blueprint 구성 파일에 추가하십시오.
    1. 편집기의 디자인 탭에서 추가를 클릭하십시오. 항목 추가 대화 상자가 열립니다.
    2. Bean을 클릭하고 확인을 클릭하십시오. Bean 세부사항 대화 상자가 열립니다.
    3. Bean을 구성하십시오.
      1. Bean ID 필드에서 CounterBean을 입력하십시오.
      2. Bean 클래스 필드에서 찾아보기를 클릭하십시오. 유형 선택사항 대화 상자가 열립니다. 유형 이름 선택 필드에서 CounterImpl을 입력하고 CounterImpl 클래스를 선택하십시오. 확인을 클릭하십시오.
      3. 확인을 클릭하여 변경사항을 승인하고 대화 상자를 닫으십시오.
      4. 메소드 참조 섹션의 초기화 메소드 필드에 있는 편집기에서 init를 입력하십시오.
      Blueprint 파일에 Bean이 추가됩니다.
    4. Blueprint를 클릭하고 추가를 클릭하십시오. 항목 추가 대화 상자가 열립니다.
    5. 서비스를 클릭하고 확인을 클릭하십시오. 서비스 세부사항 대화 상자가 열립니다.
    6. 서비스를 구성하십시오.
      1. 서비스 인터페이스 필드에서 찾아보기를 클릭하고 학습 2에 작성한 Counter 인터페이스를 선택하십시오. 확인을 클릭하십시오.
      2. Bean 참조 필드에서 찾아보기를 클릭하고 Bean: CounterBean을 선택하십시오. 확인을 클릭하십시오.
      3. 확인을 클릭하여 변경사항을 승인하고 대화 상자를 닫으십시오.
      서비스가 Blueprint 파일에 추가됩니다.
  3. 파일을 저장하십시오.
Blueprint 구성 소스를 보기 위해 소스 탭으로 전환하십시오.
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0">
	<bean id="CounterBean" class="com.ibm.ws.eba.counter.CounterImpl" init-method="init"/>
	<service id="CounterBeanService" ref="CounterBean"
		interface="com.ibm.ws.eba.counter.Counter" />
</blueprint>
팁: 소스를 형식화하려면 Ctrl+Shift+F를 누르십시오.
Blueprint 구성 파일에 대하여 자세히 학습:
bean
bean 요소는 인스턴스화되는 Blueprint 컴포넌트를 정의합니다.
이 학습서에서 bean 요소는 CounterImpl 클래스 생성자를 호출하여 컴포넌트 Counter의 인스턴스화의 결과를 가져옵니다. 클래스가 작성된 후 초기화 메소드 getCount()가 호출됩니다.
클래스
class 속성은 컴포넌트의 구현 클래스가 인스턴스화되는 것을 지정합니다.
id
id 속성은 컴포넌트를 식별합니다. 컴포넌트가 Blueprint와는 다른 곳에서 참조되는 경우(예: 컴포넌트가 서비스 정의에서 참조되는 경우) 이 속성은 필수입니다.
init 메소드
init-method init()가 컴포넌트가 작성될 때 호출됩니다. 번들 초기화 중에 메소드를 호출하지 않으려면 이 속성을 제거하십시오.
서비스
service 요소는 OSGi 서비스 레지스트리에 대한 컴포넌트의 내보내기를 정의합니다.
이 학습서에서, service 요소는 인터페이스 속성에 의해 지정되는 인터페이스 com.ibm.ws.eba.counter.Counter를 가진 OSGi 서비스 레지스트리에서 서비스로서 이름 Counter를 가진 컴포넌트를 내보냅니다.
ref
ref 속성은 내보낸 컴포넌트의 컴포넌트 ID를 참조합니다. 이는 컴포넌트 요소에서 정의됩니다.
인터페이스
interface 속성은 컴포넌트 클래스가 구현하는 인터페이스를 참조합니다.

Blueprint 구성 파일에 대한 자세한 정보는 OSGi Blueprint XMLOSGi Blueprint 컴포넌트 모델(RFC124)을 참조하십시오.

학습 체크포인트

OSGi 카운터 번들에 대한 Blueprint 구성 파일을 작성했습니다.

이 학습에서 다음 주제에 대해 학습했습니다.
  • blueprint.xml 파일 작성 방법.
  • blueprint.xml 파일 구성 방법.
< 이전 | 다음 >
주제 유형을 표시하는 아이콘 학습서 학습 주제
Information Center의 이용 약관 | 피드백

시간소인 아이콘 마지막 업데이트 날짜: 2014-05-22

파일 이름: counter_lesson3.html