Springify: `CommonContainerStoppingErrorHandler` für erwartetes Verhalten
authorKai Moritz <kai@juplo.de>
Wed, 13 Apr 2022 21:09:49 +0000 (23:09 +0200)
committerKai Moritz <kai@juplo.de>
Fri, 15 Apr 2022 08:29:58 +0000 (10:29 +0200)
* Der `CommonContainerStoppingErrorHandler` stoppt den Container beim
  ersten Auftreten eines Fehlers.
* Dadurch ist das erwartete Verhalten - soweit bisher durch die Tests
  definiert - wiederhergestellt.
* Der Handler wird den Container aber auch bei einem Fehler im Listener
  stoppen, so dass in dem Fall wahrscheinlich noch nachgebessert werden
  muss.

src/main/java/de/juplo/kafka/ApplicationConfiguration.java

index 5cefa32..fd4ff28 100644 (file)
@@ -4,6 +4,7 @@ import org.apache.kafka.clients.consumer.ConsumerRecord;
 import org.springframework.boot.context.properties.EnableConfigurationProperties;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
+import org.springframework.kafka.listener.CommonContainerStoppingErrorHandler;
 
 import java.util.function.Consumer;
 
@@ -20,4 +21,10 @@ public class ApplicationConfiguration
       // Handle record
     };
   }
+
+  @Bean
+  public CommonContainerStoppingErrorHandler errorHandler()
+  {
+    return new CommonContainerStoppingErrorHandler();
+  }
 }