Hi trying springboot reactive using Oracle DB. i got this exception when i trying to save the User. anyone has any idea why? i verified that connection is established
val u = Users("123", "123", "123")
usersRepository.save(u).subscribe { it -> println(it.email) }
This is my Repository
@Repository
interface UsersRepository : ReactiveCrudRepository<Users, String> {
}
This is the Users class
@Table(name = "users")
class Users(user: String?, email: String?, pass: String?) {
constructor() : this(null, null, null ) {
}
@Id
@Column
var username: String? = user
@Column
var email: String? = email
@Column
var password: String? = pass
@Column
var resetUuid: String? = null
@Column
var expiryDatetime: LocalDateTime? = null
}
the DDL
CREATE TABLE "USERS"
( "USERNAME" VARCHAR2(255 CHAR) NOT NULL ENABLE,
"EMAIL" VARCHAR2(255 CHAR),
"EXPIRY_DATETIME" TIMESTAMP (6),
"PASSWORD" VARCHAR2(255 CHAR),
"RESET_UUID" VARCHAR2(255 CHAR),
PRIMARY KEY ("USERNAME"))
this the exception
reactor.core.Exceptions$ErrorCallbackNotImplemented: java.lang.ClassCastException: class java.lang.Long cannot be cast to class java.lang.Integer (java.lang.Long and java.lang.Integer are in module java.base of loader 'bootstrap')
Caused by: java.lang.ClassCastException: class java.lang.Long cannot be cast to class java.lang.Integer (java.lang.Long and java.lang.Integer are in module java.base of loader 'bootstrap')
at java.base/java.util.stream.Collectors.lambda$summingInt$19(Collectors.java:681) ~[na:na]
at reactor.core.publisher.MonoStreamCollector$StreamCollectorSubscriber.onNext(MonoStreamCollector.java:132) ~[reactor-core-3.4.22.jar:3.4.22]
at reactor.core.publisher.FluxFlatMap$FlatMapMain.tryEmit(FluxFlatMap.java:543) ~[reactor-core-3.4.22.jar:3.4.22]
at reactor.core.publisher.FluxFlatMap$FlatMapInner.onNext(FluxFlatMap.java:984) ~[reactor-core-3.4.22.jar:3.4.22]
at reactor.core.publisher.FluxPeek$PeekSubscriber.onNext(FluxPeek.java:200) ~[reactor-core-3.4.22.jar:3.4.22]
at reactor.core.publisher.FluxConcatArray$ConcatArrayDelayErrorSubscriber.onNext(FluxConcatArray.java:364) ~[reactor-core-3.4.22.jar:3.4.22]
I found same error with oracle-r2dbc driver 1.0.0, this version has a bug oracle-r2dbc, if you use this driver - try previous version 0.4.0.