Closed
Description
Although #1093 suggest otherwise following code fails on 3.2.4:
@JvmInline
value class EmailAddress(val theAddress: String)
@org.springframework.data.relational.core.mapping.Table
data class Contact(val id: String, val name:String, val emailAddress: EmailAddress)
@Repository
interface ContactRepo : CrudRepository<Contact, String> {
}
with:
Caused by: java.lang.IllegalStateException: A constructor parameter name must not be null to be used with Spring Data JDBC; Offending parameter: org.springframework.data.mapping.Parameter@a4a14c26
at org.springframework.util.Assert.state(Assert.java:97)
at org.springframework.data.jdbc.core.mapping.JdbcMappingContext.createPersistentEntity(JdbcMappingContext.java:73)
at org.springframework.data.jdbc.core.mapping.JdbcMappingContext.createPersistentEntity(JdbcMappingContext.java:40)
at org.springframework.data.mapping.context.AbstractMappingContext.doAddPersistentEntity(AbstractMappingContext.java:407)
at org.springframework.data.mapping.context.AbstractMappingContext.addPersistentEntity(AbstractMappingContext.java:383)
at org.springframework.data.mapping.context.AbstractMappingContext.addPersistentEntity(AbstractMappingContext.java:343)
at java.base/java.lang.Iterable.forEach(Iterable.java:75)
at org.springframework.data.relational.RelationalManagedTypes.forEach(RelationalManagedTypes.java:81)
at org.springframework.data.mapping.context.AbstractMappingContext.initialize(AbstractMappingContext.java:519)
at org.springframework.data.mapping.context.AbstractMappingContext.afterPropertiesSet(AbstractMappingContext.java:511)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1833)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1782)