Tagged

Chapter 5

A collection of 6 posts

Chapter 5

5.6. Considerations when using external libraries

대부분의 엔터프라이즈 애플리케이션 라이브러리들은 context class loader를 통해서 타입과 리소스를 로딩할 수 있다고 가정한다. 보통 개발자가 이 것을 직접 다루지는 않지만, 애플리케이션 서버, 컨테이너 또는 멀티 쓰레드로 동작하는 애플리케이션들은 context class loader를 사용하고 있다. OSGi R4에서는 context class loader를 통해 가용한 타입이나 리소스 집합에 대해 정의되어 있지 않다. 이것은 OSGi

Chapter 5

5.5. Importing and Exporting packages

Import-Package와 Export-Package manifest 헤더에 대한 자세한 내용은 OSGi 스펙을 참조하도록. 번들은 자신이 의존성을 가지는 모든 외부 패키지들을 Import-Package를 사용해서 설정한다. 만약 다른 번들들이 사용할 필요가 있는 타입을 제공해야 한다면, Export-Package를 사용하여 외부 번들에서 사용할 수 있는 모든 패키지를 설정한다.

Chapter 5

5.3. Required Spring Framework and Spring Dynamic Modules Bundles

스프링 Extender가 제대로 동작하려면 OSGi 플랫폼에 배포해야 할 몇몇 번들 아티팩트들이 있다.– org.springframework.osgi.extender : extender 번들 자신– org.springframework.osgi.core : 스프링 DM을 지원하는 핵심 구현체 변들– org.springframework.osgi.io : 스프링 DM I/O 지원 라이브러리 번들 여기에 추가로 스프링 라이브러리가 필요한데, 스프링 2.

Chapter 5

5.2. Extender configuration options

번들과 관련된 설정이외에, 스프링 DM은 extender의 기본 행위를 설정할 수도 있다. 이것은 Spring-DM을 관리하는 환경Managed Environment에 포함시키거나 여러 번들에 걸친 기능이 필요할 때 유용하다. 확장 가능한 설정을 위해, extender는 OSGi의 fragment를 사용하여 기본 값을 재정의 할 수 있다. extender는 META-INF/spring 밑에 있는 모든 XML 파일을 읽어들이며 application context(OsgiBundleXmlApplicationContext)

Chapter 5

5.1. Bundle format and Manifest headers

각각의 애플리케이션 모듈은 OSGi 번들로 패키징해야 한다. 번들은 META-INF/MANIFEST.MF 파일을 가지고 있는 jar 파일이다. OSGi 서비스 플랫폼 핵심 스팩 3.2에서 그 자세한 내용을 살펴볼 수 있다. 몇몇 OSGi 구현체들은 풀어헤쳐진 jar 파일을 지원하지만 형식은 동일하다. 스프링 Extender는 번들은 “스프링이 가미된”Spring-Powered 번들을 인식하고 해당 번들에

Chapter 5

Chapter 5. Packaging and Deploying Spring-based OSGi applications

보통의 스프링 애플리케이션들은 단일 Application Context를 사용하거나, 서비스 계층, 데이터 계층 그리고 도메인 객체를 가지고 있는 부모 Context와 웹 계층 컴포넌트들을 가지고 있는 자식 Context로 나눠서 사용했을 것이다. Application Context는 여러 설정 파일들을 뭉쳐서 생성할 수 있었다. 애플리케이션을 OSGi에 배포할 때 자연스러운 방법은 애플리케이션을 OSGi 서비스 레지스트리를 사용하여 상호 작용하는