You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It is useless to register interfaces for Kryo, because it is the concrete class that needs to be serialized to transfer over network. Also, there is no easy way to know all specific implementation of a class with a parameterized type. Therefore, the automatic registration of classes for Kyro fails to identify some cases with some dtos. As such interfaces and generics type wont have their resolved type registered automatically.
If we really wish to use 100 % automatic registration, we should find a solution for that.
It is not a big blocker because if we know the resolved type in those case, we can register those classes manually
The text was updated successfully, but these errors were encountered:
@payne911 A possible solution could be to add an annotation to interface fields of the dtos, something like @Implementations(classes = {ArrayList.class, LinkedList.class}) or @Register({ArrayList.class, LinkedList.Class}) to specify right at the problematic field location, which implementations of the Interface, or generic field, needs to be Register for that field. It then becomes esay to check for that annotation during registration process and also register classes specified in the annotation argument. Ex:
It is useless to register interfaces for Kryo, because it is the concrete class that needs to be serialized to transfer over network. Also, there is no easy way to know all specific implementation of a class with a parameterized type. Therefore, the automatic registration of classes for Kyro fails to identify some cases with some dtos. As such interfaces and generics type wont have their resolved type registered automatically.
If we really wish to use 100 % automatic registration, we should find a solution for that.
It is not a big blocker because if we know the resolved type in those case, we can register those classes manually
The text was updated successfully, but these errors were encountered: