295.5. Apache Karaf에서 번들 실행
mvn 설치 로 번들을 빌드하면 배포할 준비가 된 것입니다. Apache Karaf에 번들을 배포하려면 Karaf 명령행에서 다음 단계를 수행합니다.
Apache Karaf에서 번들 배포
# Add Camel feature repository
karaf@root> features:chooseurl camel 2.15-SNAPSHOT
# Install camel-scr feature
karaf@root> features:install camel-scr
# Install commons-lang, used in the example route to validate parameters
karaf@root> osgi:install mvn:commons-lang/commons-lang/2.6
# Install and start your bundle
karaf@root> osgi:install -s mvn:example/camel-scr-example/1.0-SNAPSHOT
# See how it's running
karaf@root> log:tail -n 10
Press ctrl-c to stop watching the log.
295.5.1. 기본 구성 덮어쓰기 링크 복사링크가 클립보드에 복사되었습니다!
기본적으로 Service Component의 구성 PID는 클래스의 정규화된 이름과 동일합니다. Karaf의 config:* 명령을 사용하여 번들의 속성을 변경할 수 있습니다.
속성 덮어쓰기
# Override 'messageOk' property
karaf@root> config:propset -p example.CamelScrExample messageOk "This is better logging"
또는 Karaf 기타 폴더에서 속성 파일을 편집하여 구성을 변경할 수 있습니다.
295.5.2. Camel SCR 번들을 템플릿으로 사용 링크 복사링크가 클립보드에 복사되었습니다!
성공/실패 로깅 및 재전송(예: 예제 경로 구현 )을 통해 자주 사용하는 통합 패턴을 구현하는 Camel SCR 번들이 있다고 가정해 보겠습니다. 모든 인스턴스에 대해 별도의 번들을 생성하지 않을 수 있습니다. SCR이 포함되어 있지 않습니다.
서비스 구성 요소에 대한 구성 PID를 만들지만 대시와 SCR이 있는 tail을 추가하여 해당 구성을 사용하여 구성 요소의 새 인스턴스를 만듭니다.
새 서비스 구성 요소 인스턴스 생성
# Create a PID with a tail
karaf@root> config:edit example.CamelScrExample-anotherone
# Override some properties
karaf@root> config:propset camelContextId my-other-context
karaf@root> config:propset to "file://removeme?fileName=removemetoo.txt"
# Save the PID
karaf@root> config:update
이렇게 하면 재정의된 속성과 함께 새 CamelContext가 시작됩니다. 얼마나 편리합니다.