Skip to content

Conversation

@erkieh
Copy link

@erkieh erkieh commented Nov 30, 2025

I needed to register custom Jackson modules (Java8, Kotlin) and Mixins (For some other external library Classes which were not serializable by the default Jackson implementation).

Also I might need to use the Micronaut Serde which is compatible with Jackson annotations and has the benefit of being GraalVM native compatible.

So I created this PR for your consideration.

@devhawk
Copy link
Collaborator

devhawk commented Dec 2, 2025

I like the idea here, but I think we need to plumb this thru DBOSConfig rather than a setter on JSONUtil. Plus, we need tests

@erkieh
Copy link
Author

erkieh commented Dec 2, 2025

I like the idea here, but I think we need to plumb this thru DBOSConfig rather than a setter on JSONUtil. Plus, we need tests

it's obvious now that you say it :)

Would you guys like to implement this feature yourselves or I should work on this PR? It does not make difference to me. I can't give promises when I would be able to finish it.

@devhawk
Copy link
Collaborator

devhawk commented Dec 4, 2025

Do we want this to be pluggable or do we want to switch to a more robust library like Micronaut Serde?

@erkieh
Copy link
Author

erkieh commented Dec 5, 2025

At minimum I would like to register modules and add mixins to the Jackson ObjectMapper. I also ended up activating DefaultTyping in my project.

I did try to use Micronaut Serde briefly but I could not get the @JsonTypeInfo annotation to work the same way as it does with the Jackson library. So maybe it does not support it the way DBOS needs it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants