Dennis Schröder
04/04/2019, 8:43 AMEntity.getAll()
I still get an No transaction in context.
Error!
I created each entity in an own transaction. Like described in the documentation!
Any hints where to look at?avolkmann
04/04/2019, 9:18 AMDennis Schröder
04/04/2019, 9:19 AMDennis Schröder
04/04/2019, 9:20 AMavolkmann
04/04/2019, 9:25 AMDennis Schröder
04/04/2019, 9:27 AMavolkmann
04/04/2019, 9:28 AMDennis Schröder
04/04/2019, 9:28 AMDennis Schröder
04/04/2019, 9:29 AMavolkmann
04/04/2019, 9:30 AMasyncTransaction
?avolkmann
04/04/2019, 9:30 AMavolkmann
04/04/2019, 9:31 AMavolkmann
04/04/2019, 9:31 AMtransaction
Dennis Schröder
04/04/2019, 9:33 AMavolkmann
04/04/2019, 9:34 AMRole.getUsers
Dennis Schröder
04/04/2019, 9:35 AM@JsonAdapter(ExposedTypeAdapter::class)
@ExposedGSON.JsonDatabaseIdField("id")
open class Role(id: EntityID<Int>) : IntEntity(id) {
companion object : IntEntityClass<Role>(Roles)
var name by Roles.name
var description by Roles.description
var ipWhitelist by Roles.ipWhitelist
var navBlacklist by Roles.navBlacklist
var externalId by Roles.externalId
var users by User via UserRoles
}
Dennis Schröder
04/04/2019, 9:36 AMDennis Schröder
04/04/2019, 9:51 AMRole.getUsers
is made from exposed! I have no idea how I can wrap it in another transaction
!Dennis Schröder
04/04/2019, 10:18 AMtransaction
didn´t solve the problem either! Tried it!Dennis Schröder
04/04/2019, 11:59 AMRole.all().toList().first().users.first().email
When I do it like this direct inside an transaction, everything works fine. So I guess ist the lazy loading mechnism, that calls the getUsers
somwhere in the serializing process after I called call.respond(entities)
!Dennis Schröder
04/04/2019, 12:02 PMtapac
04/04/2019, 3:21 PMExposedTypeAdapter
should returns? Every entity field or only ids?
As you may know text/blob
fields are lazy loaded by jdbc drivers, so it looks like when you are trying to serialize ipWhitelist/navBlacklist
inside a launch
block Gson is trying to load text values from already closed transaction.Dennis Schröder
04/04/2019, 3:58 PMtapac
04/04/2019, 3:59 PMDennis Schröder
04/05/2019, 8:11 AMwithContext(<http://Dispatcher.IO|Dispatcher.IO>) {query()}
. And it seems that then I loose my transaction context.