2016-10-27 4 views
0

저는 SpringCloudStream의 Brooklyn.Release 버전에서 작업하고 있습니다. 내 유스 케이스에는 Mutiple Sinks가있는 HttpSource가 있습니다.SpringCloudStream-HttpSource가 404를 반환합니다.

<Fault xmlns="http://localhost/"> 
    <error>Not Found</error> 
    <message>No message available</message> 
    <path>/</path> 
    <status>404</status> 
    <timestamp>1477612242743</timestamp> 
</Fault> 
:

<dependency> 
       <groupId>org.springframework.cloud.stream.app</groupId> 
       <artifactId>spring-cloud-starter-stream-source-http</artifactId> 
       <version>1.0.4.RELEASE</version> 
</dependency> 

@SpringBootApplication 
@Import(HttpSourceConfiguration.class) 
public class SourceApplication { 
    public static void main(String[] args) { 
     SpringApplication.run(SourceApplication.class, args); 
    } 
} 

내 집계 앱이

@SpringBootApplication 
public class Application { 
    public static void main(String[] args) { 
     new AggregateApplicationBuilder().from(SourceApplication.class) 
       .via(ProcessorApplication.class).to(SinkApplication.class).args().run(args); 
    } 
} 

항상 아래로 다음과 같은 반응을 얻고있다 : 나는 아래를 사용하여 초보 응용 프로그램의 응용 프로그램에 대한 의존도를 추가 할 때

ComponentScan을 HttpSourceConfiguration (Out of the Box)에 추가했습니다. 그러나 성공은 없습니다.

@SpringBootApplication 
@ComponentScan(value = {"com.xxx.xxx.stream","org.springframework.cloud.stream.app.http.source"}) 
public class Application { 
    public static void main(String[] args) { 
     new AggregateApplicationBuilder().from(SourceApplication.class) 
       .via(ProcessorApplication.class).to(SinkApplication.class).args().run(args); 
    } 
} 

동일한 SourceApplication을 Rabbit Binder와 함께 사용하면 예상대로 작동합니다. 이 일을 제대로 이끌어 주시겠습니까?

도움과 시간을 보내 주시면 감사하겠습니다.

감사 KARTHIK

답변

0

나머지 엔드 포인트가 설치 될 것 같지 않고이 issue로 실행중인 것 같습니다. 패키지가 HttpSourceConfiguration 인 패키지의 경우 (다른 패키지의 패키지이므로) @ComponentScan이 필요합니다.

동일한 SourceApplication을 Rabbit Binder와 함께 사용하면 예상대로 작동합니다.

는 토끼 바인더와 함께 상자 http 응용 프로그램의 출력을 의미 아니면 그냥 위의 SourceApplicationrabbit 바인더 종속성을 추가합니까? 보통

당신 (관련 바인더의 사용) 상자에서 나오는 http 소스 응용 프로그램을 사용하여 선호하지만, 당신이 input 또는 집계 응용 프로그램 자체의 output이 없으면 집계 응용 프로그램에 대한 당신은 바인더가 필요하지 않습니다 브로커에 묶여있다.

+0

componentScan을 성공적으로 업데이트했습니다. Rabbit 바인더를 HttpSourceConfiguration과 Sink (Mongo)를 사용하는 소스 용 Spring Boot Apps와의 종속성으로 사용했습니다. AggregateApplicationBuilder를 사용하여 바인더가없는 동일한 유스 케이스의 성능을 확인하고 싶습니다. –

+0

케이스 1의 경우 spring-cloud-starter-stream-source-http를 spring-cloud-starter-stream-rabbit과 함께 상자 소스로 사용하고 있으며 spring-cloud-starter-stream-rabbit의 종속성을 제거했습니다. 두 번째 경우. –

+0

여기에서 샘플 코드를 확인했습니다 - [https://github.com/pckeyan/spring-cloud-stream-http-sample-nobinder] –

관련 문제