28장. Fuse Integration Projects를 서버에 게시

Eclipse 게시 메커니즘을 사용하여 Fuse Integration 프로젝트를 서버 런타임에 배포합니다. 이렇게 하려면 Fuse 통합 관점에서 서버를 정의하고 서버 보기에 추가해야 합니다. 단계별 데모는 를 참조하십시오.

28.1. 개요

할당된 Fuse 프로젝트를 자동으로 게시하도록 지원되는 서버를 설정하거나 publish 명령을 수동으로 호출할 때만 게시할 수 있습니다.

서버 뷰에 추가된 각 서버 런타임에는 구성, 연결 및 게시 세부 정보가 포함된 자체 개요 페이지가 있습니다.

UGservRuntimeOverviewTab

게시를 확장하여 서버 런타임 게시 옵션 및 기본 설정을 노출해야 할 수 있습니다.

  • 프로젝트를 수동으로 게시하려면 이 옵션을 선택해야 합니다.You must select this option to manually publish projects.

    중요

    또한 서버를 시작한 경우 서버의 추가 및 제거 페이지에 변경 사항을 즉시 게시 해야 합니다(자세한 내용은 “수동으로 Fuse 프로젝트 게시” 참조).

  • 리소스가 변경 되면 자동으로 게시됩니다. 이 옵션을 사용하면 변경 사항을 저장할 때 Fuse 프로젝트를 자동으로 게시하거나 다시 게시할 수 있습니다. 게시 간격(기본값: 15초)에 따라 프로젝트를 게시 하는 속도가 빨라집니다.
  • 빌드 이벤트 Cryostat - CryostatFor Fuse 프로젝트는 리소스가 변경될 때 자동으로 게시 되는 것과 동일하게 작동합니다.

28.2. 리소스가 변경될 때 자동으로 Fuse 프로젝트 게시

서버 런타임의 기본 게시 옵션은 리소스가 변경될 때 자동으로 게시됩니다.

  1. 필요한 경우 Fuse 프로젝트를 게시할 서버 런타임을 시작합니다. 자세한 내용은 27.2절. “서버 시작”의 내용을 참조하십시오.
  2. 서버 보기에서 서버 런타임을 두 번 클릭하여 개요 페이지를 엽니다.
  3. 게시 를 확장한 다음 리소스가 변경될 때 자동으로 게시 를 선택합니다.
  4. 게시 주기 간 간격을 늘리거나 줄이려면 필요에 따라 게시 간격(초) 옆에 있는 라디오 버튼을 클릭합니다.
  5. 서버 보기에서 서버 런타임을 마우스 오른쪽 버튼으로 클릭하여 컨텍스트 메뉴를 연 다음 추가 및 제거를 선택합니다.

    UGservAddRemove1

    게시에 사용할 수 있는 모든 리소스가 Available 열에 표시됩니다.

  6. 서버 런타임에 리소스(이 경우 CBRroute Fuse 프로젝트)를 할당합니다.

    • 두 번 클릭 또는
    • 이를 선택하고 추가 를 클릭합니다.

      선택한 리소스는 Configured 열로 이동합니다.

      UGservAddRemove2

      이 단계에서는 할당된 리소스가 실제로 게시되는 시간은 서버 런타임이 실행 중인지와 게시 간격 설정에 따라 달라집니다. 그러나 서버가 중지된 경우 서버를 시작한 후 프로젝트를 수동으로 게시해야 합니다(자세한 내용은 “수동으로 Fuse 프로젝트 게시”참조).

  7. 서버가 시작된 경우 즉시 변경 사항을 게시 하여 활성화합니다.

    UGservAddRemove3

    이 옵션을 사용하면 완료 를 클릭하면 구성된 프로젝트가 즉시 게시됩니다. 서버 런타임 개요 페이지에서 리소스 변경 옵션을 자동으로 게시하면 로컬 프로젝트에 대한 변경 사항을 저장할 때마다 구성된 프로젝트가 다시 게시됩니다.

  8. 완료를 클릭합니다.

    이 프로젝트는 서버 런타임 노드의 Servers 뷰에 표시되고 서버 런타임 상태는 [Started,Publishing…​].

    게시가 완료되면 서버 런타임과 프로젝트 보고서의 상태는 [Started,Synchronized]:

    UGservPublishSynched
    참고

    서버 런타임의 경우 Synchronized 는 서버의 모든 게시된 리소스가 해당 로컬 카운터와 동일하다는 것을 의미합니다. 게시된 리소스의 경우 Synchronized 는 로컬과 동일한 것을 의미합니다.

28.3. 수동으로 Fuse 프로젝트 게시

  1. 필요한 경우 Fuse 프로젝트를 게시할 서버 런타임을 시작합니다. 자세한 내용은 27.2절. “서버 시작”의 내용을 참조하십시오.
  2. 서버 보기에서 서버 런타임을 두 번 클릭하여 개요 페이지를 엽니다.
  3. 게시 를 확장한 다음 자동으로 게시 를 선택합니다.
  4. 파일저장을 클릭하여 게시 옵션 변경 사항을 저장합니다.
  5. Fuse 프로젝트가 이미 서버 런타임에 할당된 경우 이 옵션이 비활성화되었는지 확인합니다. 서버가 시작된 경우 즉시 변경 사항을 게시합니다.

    1. 서버 보기에서 서버 런타임을 마우스 오른쪽 버튼으로 클릭하여 컨텍스트 메뉴를 엽니다.
    2. Add and Remove…​ 을 클릭하여 서버의 추가 및 제거 페이지를 엽니다.
    3. 다음 옵션이 활성화된 경우 비활성화: 서버가 시작되면 변경 사항을 즉시 게시합니다.
    4. [완료] 으로 건너뜁니다.
  6. Fuse 프로젝트가 서버 런타임에 할당되지 않은 경우 지금 할당합니다.

    1. [startAssignResource] 에서 [stopAssignResource] 을/를 통해 확인할 수 있습니다. “리소스가 변경될 때 자동으로 Fuse 프로젝트 게시”
    2. 서버를 시작한 경우 변경 사항을 즉시 게시합니다.
  7. 를 클릭합니다.

    프로젝트가 서버 런타임 노드의 서버 보기에 표시되고 서버 런타임 상태가 [Started]:

    UGservPublishSynched
  8. Servers 보기에서 프로젝트의 노드를 마우스 오른쪽 버튼으로 클릭합니다. 이 예에서는 CBRroute Fuse 프로젝트를 선택하여 컨텍스트 메뉴를 엽니다.

    UGassgnProjSrvViewCntxtMnu
  9. Full Publish 를 선택합니다.

    게시 작업 중에 서버 런타임과 프로젝트 보고서의 상태는 [Started,Republish] 입니다.

    게시가 완료되면 서버 런타임과 프로젝트 보고서의 상태는 [Started,Synchronized]:

    참고

    툴링은 Incremental Publish 옵션을 지원하지 않습니다. 증분 게시 를 클릭하면 전체 게시가 생성됩니다.

28.4. 프로젝트가 서버에 게시되었는지 확인

서버 런타임에 Fuse 프로젝트를 게시한 후 서버에 연결하여 프로젝트의 번들이 설치되어 있는지 확인할 수 있습니다.

  1. 서버 런타임에 연결합니다. 자세한 내용은 “서버 보기에서 실행 중인 서버에 연결” 에서 참조하십시오.
  2. Servers 보기에서 서버 런타임 트리를 확장하여 Bundles 노드를 노출하고 선택합니다.

    툴링은 서버에 설치된 번들 목록으로 속성 보기를 채웁니다.

    UGsrvVerifyPublishedProj
  3. 프로젝트의 번들을 찾으려면 목록 맨 아래로 스크롤하거나 속성 보기의 검색 상자에 번들의 Symbolic Name 을 입력합니다. 번들의 Symbolic 이름은 프로젝트를 만들 때 지정한 이름입니다.

    참고

    또는 터미널 보기에서 osgi:list 명령을 실행하여 Fuse 서버 런타임에 설치된 번들 목록을 확인할 수 있습니다. 툴링은 osgi:list 명령으로 표시되는 OSGi 번들에 대해 다른 이름 체계를 사용합니다.

    프로젝트의 pom.xml 파일의 < build > 섹션에서 maven-bundle-plugin 항목에 나열된 번들의 심볼릭 이름과 OSGi를 찾을 수 있습니다. 예를 들면 다음과 같습니다.

    ugBundleNamesPomFile