SpringFactoriesLoader should tolerate whitespace [SPR-17413] #21946
Labels
in: core
Issues in core modules (aop, beans, core, context, expression)
status: backported
An issue that has been backported to maintenance branches
type: enhancement
A general enhancement
Milestone
Philipp Foermer opened SPR-17413 and commented
The original issue was raised at spring-projects/spring-boot#14903 for Spring Boot 1.5.13.RELEASE, but mentioned, that the issue must be created for springframework.
Scenario:
Provided a custom auto configuration definition in META-INF/spring.factories of the following form for Spring Boot:
"org.springframework.boot.autoconfigure.EnableAutoConfiguration=FQNClassA, FQNClassB".
Problem:
Spring failed to load the configuration class " FQNClassB", because no whitespace trimming was done.
Proposed improvement:
As a java identifier can not have got any whitespace in it, whitespace trimming should be applied for a class token by SpringFactoriesLoader.
In my opinion this would make a definition more robust, as whitespace mistakes are harder to review and this might be an unexpected behaviour from user perspective as whitespace is expected to be ignored.
Affects: 4.3.17
Referenced from: commits dd2ce20, 1107963, 46bc145
Backported to: 5.0.11, 4.3.21
The text was updated successfully, but these errors were encountered: