From c052ff904fd59720c9bc0ae2bf659d7beb0b1e97 Mon Sep 17 00:00:00 2001 From: DevSeongmin Date: Mon, 4 Aug 2025 16:52:50 +0900 Subject: [PATCH] GH-4935: Fix RecordFieldExtractor to respect names() for Java Record types Signed-off-by: DevSeongmin --- .../batch/item/file/builder/FlatFileItemWriterBuilder.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/file/builder/FlatFileItemWriterBuilder.java b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/file/builder/FlatFileItemWriterBuilder.java index 7de7de5301..1f1358ac51 100644 --- a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/file/builder/FlatFileItemWriterBuilder.java +++ b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/file/builder/FlatFileItemWriterBuilder.java @@ -392,6 +392,9 @@ public FormatterLineAggregator build() { if (this.fieldExtractor == null) { if (this.sourceType != null && this.sourceType.isRecord()) { this.fieldExtractor = new RecordFieldExtractor<>(this.sourceType); + if (!this.names.isEmpty()) { + ((RecordFieldExtractor) this.fieldExtractor).setNames(this.names.toArray(new String[0])); + } } else { BeanWrapperFieldExtractor beanWrapperFieldExtractor = new BeanWrapperFieldExtractor<>();