전 세계적으로 정의 된 FTP Camel 경로가 있습니다. here 설명 된대로,재사용 낙타 FTP 경로
exchange.getContext().startRoute("downloadRoute");
다른 스레드에서 중지 : 그것은 다른 경로에서 시작
.process(new Processor() {
Thread stop;
@Override
public void process(final Exchange exchange) throws Exception {
stop = new Thread() {
@Override
public void run() {
try {
log.info("Stopping route");
exchange.getContext().stopRoute("downloadRoute");
} catch (Exception e) {
} finally {
latch.countDown();
}
}
};
stop.start();
}
})
그것은 잘 작동합니다. 이제이 경로를 다시 시작하겠습니다. 폴더에 새 파일을 추가하고 다시 다운로드하거나 다운로드 한 파일을 다시 다운로드한다고 가정 해보십시오.
그래서 같은 명령으로이 경로를 다시 시작하지만 파일을 다운로드하지는 않습니다. 경로의 어딘가에 다운로드 한 것으로 표시되어 있기 때문에 단순히 파일을 보지 못합니다. 반면 낙타 환경에서이 경로를 제거한 다음 다시 추가하고 시작하면 작동합니다. 파일을 다시 다운로드합니다.
그래서 새로운 경로로 시작하기 위해 기존 경로를 재사용 (시작 - 정지 - 시작)하는 방법에 대한 질문은 무엇입니까?
시도해주세요. https://stackoverflow.com/questions/18211918/camel-ftp-only-run-once –
아니요, 경로를 중지 할 수 있습니다. 나는 새로운 것으로 다시 시작할 수 없다. – streetturtle