Whiteship's Note

8.2. Web support 사용법

Spring DM/Chapter 8 : 2008. 6. 12. 23:11


WAR가 아닌 번들처럼, 스프링 DM 웹은 extender pattern을 사용하여 WAR를 찾고 설치한다. 하지만, 표준 스프링 DM Extender와 가장 큰 차이는 오직 스프링 DM이 WAR를 설치와 제거를  실행한다는 것이다. 실제 웹 애플리케이션 생성과 쓰레드 관리는 WAR가 설치된 웹 컨테이너에게 맡긴다. 스프링 DM 웹은 단지 언제 WAR를 웹 컨테이너로 배포할지와 언제 내릴지를 알려줄 뿐이다. 웹 애플리케이션을 생성하고 관리하는 것은 컨테이너에게 달려있다.

스프링 DM 웹을 사요하려면 다음을 설치해야한다.:
  • spring-osgi-web.jar: 스프링 DM 웹 지원
  • spring-osgi-web-extender.jar: 스프링 DM 웹 extender

시작한 OSGi WAR 번들을 찾고 그들을 지원하는 웹 컨테이너에 설치하기 위한 번들들이다. 기본적으로 Tomcat이 사용된다 하지만 이걸 Jetty나 다른 커스텀 서버로 변경할 수 있다. war 번들이 멈추면, 스프링 DM은 그와 관련된 웹 애플리케이션을 중지시키고 내린다. 기존의 웹 개발과의 차이점은, 서블릿 클래스들이 항상 우선권을 가지는 OSGi 클래스패스에 명시적으로 import 되야 한다는 것이다.

웹 애플리케이션을 실행하는 건 웹 컨테이너기 때문에, 스프링 설정 파일들을 META-INF/spring 폴더에 넣거나 스프링 DM manifest들을 사용할 필요가 없다. 그냥 간단하게 WAR에 있는 파일들을 번들로 묶고 웹 프레임워크를 사용하여 스프링 컨테이너를 시작시키면 된다. 스프링 MVC 연동을 할 수 있다. 스프링 Extender도 계속해서 필요한데, 이 게 있어야 네임스페이스를 처리할 수 있다. 만약에 이게 없으면, 스프링 네임스페이스(osgi:, aop: 심지어 beans: 까지도)를 처리할 수 없다.

'Spring DM > Chapter 8' 카테고리의 다른 글

8.7. Spring-MVC Integration  (0) 2008.06.17
8.6. OSGi-ready libraries and web development  (0) 2008.06.17
8.5. Customizing the standard deployers  (0) 2008.06.14
8.4. web extender 설정하기  (0) 2008.06.12
8.3. WAR classpath in OSGi  (0) 2008.06.12
8.2. Web support 사용법  (0) 2008.06.12
8.1. 지원하는 웹 컨테이너  (0) 2008.06.12
Chapter 8. Web Support  (0) 2008.06.12
top

Write a comment.