6262import org .springframework .kafka .annotation .KafkaHandler ;
6363import org .springframework .kafka .annotation .KafkaListener ;
6464import org .springframework .kafka .config .ConcurrentKafkaListenerContainerFactory ;
65+ import org .springframework .kafka .config .KafkaListenerEndpointRegistry ;
6566import org .springframework .kafka .core .DefaultKafkaConsumerFactory ;
6667import org .springframework .kafka .core .DefaultKafkaProducerFactory ;
6768import org .springframework .kafka .core .KafkaTemplate ;
@@ -131,6 +132,9 @@ public class ReplyingKafkaTemplateTests {
131132 @ Autowired
132133 private Config config ;
133134
135+ @ Autowired
136+ private KafkaListenerEndpointRegistry registry ;
137+
134138 @ Test
135139 public void testGood () throws Exception {
136140 ReplyingKafkaTemplate <Integer , String , String > template = createTemplate (A_REPLY );
@@ -147,6 +151,10 @@ public void testGood() throws Exception {
147151 new DefaultKafkaHeaderMapper ().toHeaders (consumerRecord .headers (), receivedHeaders );
148152 assertThat (receivedHeaders ).containsKey ("baz" );
149153 assertThat (receivedHeaders ).hasSize (2 );
154+ assertThat (KafkaTestUtils .getPropertyValue (
155+ this .registry .getListenerContainer (A_REQUEST ), "containerProperties.missingTopicsFatal" ,
156+ Boolean .class ))
157+ .isFalse ();
150158 }
151159 finally {
152160 template .stop ();
@@ -501,6 +509,7 @@ public ConcurrentKafkaListenerContainerFactory<Integer, String> kafkaListenerCon
501509 factory .setConsumerFactory (cf ());
502510 factory .setReplyTemplate (template ());
503511 factory .setReplyHeadersConfigurer ((k , v ) -> k .equals ("baz" ));
512+ factory .setMissingTopicsFatal (false );
504513 return factory ;
505514 }
506515
@@ -529,7 +538,7 @@ public Map<String, Object> additionalHeaders() {
529538 return factory ;
530539 }
531540
532- @ KafkaListener (topics = A_REQUEST )
541+ @ KafkaListener (id = A_REQUEST , topics = A_REQUEST )
533542 @ SendTo // default REPLY_TOPIC header
534543 public String handleA (String in ) {
535544 return in .toUpperCase ();
0 commit comments