Liberty의 Liberty 기능 개발
Liberty 기능은 기능 Manifest 파일과 하나 이상의 OSGi 번들로 구성됩니다. OSGi 번들에는 Liberty 서버에 기능을 설치할 때 특정 기능을 제공하는 클래스와 서비스가 포함되어 있습니다.
이 태스크 정보
다음과 같은 방법으로 Liberty 기능을 개발할 수 있습니다.
- 수동으로 기능을 개발하십시오(Liberty 기능 수동 개발 참조).
- WebSphere® Application Server Developer Tools를 사용하십시오. 개발자 도구를 사용하여 Liberty 기능 작성의 내용을 참조하십시오.
Liberty 기능 개발에 대한 전체 세부사항은 다음 하위 주제를 참조하십시오.
하위 주제
- Liberty 기능 수동 개발
수동으로 Liberty 기능을 작성하여 Liberty에 설치할 수 있습니다. - 개발자 도구를 사용하여 Liberty 기능 작성
WebSphere Application Server 개발자 도구를 사용하여 자체 기능을 작성하고 기존 Liberty 서버에 이를 설치하거나, 사용자에게 전달할 수 있도록 이를 패키징할 수 있습니다. - 단순 활성화로 OSGi 번들 개발
OSGi 번들 코드의 라이프사이클을 제어하는 가장 간편한 방법은 번들 내의 클래스 중 하나에서 org.osgi.framework.BundleActivator 인터페이스를 구현하는 것입니다. 서버가 번들을 시작하고 중지할 때 BundleActivator 인터페이스의 시작 및 중지 메소드가 호출됩니다. - OSGi Declarative Services를 사용하여 고급 기능 작성
단순 기능은 ManagedService 및 ServiceTracker와 같은 인터페이스의 직접 구현과 번들 활성화기 클래스를 사용하여 제어할 수 있습니다. 번들 간의 관계가 복잡해질수록 OSGi DS(Declarative Services)와 같은 기능을 사용하여 개별 서비스로 기능을 분해하는 것이 더 바람직할 수 있습니다. DS(간혹 서비스 컴포넌트 런타임이나 SCR이라고 알려짐)는 OSGi 서비스의 라이프사이클 및 인젝션 관리를 제공합니다. - 고급 구성
고급 구성에는 OSGi Metatype Service Extensions 및 구성에 대한 설명 및 기본값을 제공하는 데 대한 정보가 포함되어 있습니다. - 애플리케이션 엔드포인트 제공
하나 이상의 웹 애플리케이션 번들(WAB)을 기능에 포함시켜 Liberty 기능을 웹 애플리케이션으로 사용 가능하게 할 수 있습니다. WAB은 Web-ContextPath Manifest 헤더가 있는 OSGi 번들입니다. - Liberty SPI 유틸리티
Liberty는 다양한 태스크를 완료하기 위한 SPI(Service Programming Interface)를 제공합니다. - 보호 기능 포함
기능 Manifest 파일의 Subsystem-Content 헤더에 하나 이상의 기능을 나열하여 사용자의 기능에 해당 기능을 포함할 수 있습니다. 자체 기능과 동일한 제품 확장기능의 기능을 포함할 수 있습니다. 포함된 기능이 다른 제품 확장기능 또는 Liberty에 있는 경우, 이는 공용 또는 보호된 가시성을 보유해야 합니다. - OSGi 애플리케이션 찾기
org.apache.aries.blueprint 패키지의 클래스를 사용하여 OSGi 애플리케이션 프로그래밍 모델을 확장할 수 있습니다. 이 써드파티 SPI는 blueprint-1.0 서버 기능을 통해 제공합니다. 확장기능을 적용하려면 OSGi 애플리케이션 번들에 액세스해야 합니다. Liberty에서 OSGi 애플리케이션은 서브시스템으로 실행됩니다. OSGi 애플리케이션을 찾으려면 사용자 기능에서 ServiceTracker를 작성하면 됩니다. - Liberty 기능에서 JNDI 기본 네임스페이스로 개발
기본 JNDI(Java™ Naming and Directory Interface) 네임스페이스에서 오브젝트를 사용 가능하게 만들 수 있습니다. 이를 수행하려면 해당 오브젝트를 osgi.jndi.service.name 서비스 특성과 함께 OSGi 서비스 레지스트리에 등록해야 합니다. osgi.jndi.service.name의 값은 필수 JNDI 이름입니다. 마찬가지로, 기본 JNDI 네임스페이스에서 오브젝트를 찾으려면 osgi.jndi.service.name 서비스 특성을 가진 OSGi 서비스 레지스트리를 검색할 수 있습니다. osgi.jndi.service.name의 값은 JNDI 이름입니다. - 사용자 정의 TAI를 Liberty 기능으로 개발
Liberty 서버에 제공된 com.ibm.wsspi.security.tai.TrustAssociationInterceptor 인터페이스를 구현하고 제품 확장을 작성하여 사용자 정의 TAI를 Liberty 기능으로 개발할 수 있습니다. - 동적 컨텐츠 관리
일반적으로 기능 Manifest 파일의 Subsystem-Content 헤더에 번들을 나열하여 번들을 런타임 환경에 설치합니다. 그러나 사용자 작성 기능의 Subsystem-Content의 일부로 사용자 작성 번들을 설치하여 OSGi 번들을 동적으로 추가 및 제거할 수도 있습니다. 사용자 작성 번들은 추가 번들을 설치 및 제어하기 위해 OSGi 번들 컨텍스트를 얻습니다.
상위 주제: Liberty 확장
관련 개념:


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twlp_feat_develop
파일 이름: twlp_feat_develop.html