Hello!
I have a question regarding naming conventions in Kotlin and how 
jackson-databind handles them.
According 
to https://kotlinlang.org/docs/java-to-kotlin-interop.html#properties , 
Kotlin automatically creates getter and setters with the names "get"/"set" 
+ PropertyName.

However, for security purposes, I want to use ProGuard, which will rename 
these getters/setters into mangled name.

This raises an issue with the package, as the package tries to locate 
getters/setters by appending "get"/"set" to the property name.
This eventually causes a crash/null assignment/unexpected behavior of the 
app.

However, I saw that FasterXML has a "fallback" to look for properties in 
the Kotlin Metadata when it doesn't find a JsonAnnotation:
https://github.com/FasterXML/jackson-module-kotlin/tree/2.15/src/main/kotlin/com/fasterxml/jackson/module/kotlin

Kotlin Metadata also includes the signatures of the getters and setters of 
the class' fields.

Unfortunately, BeanSerializer doesn't use this fallback and do not 
initialize the value (since the getter/setter is proguarded)

Is there a way to make it look in the Kotlin Metadata instead of appending 
"get"/"set" to the property name?

Thank you very much!

-- 
You received this message because you are subscribed to the Google Groups 
"jackson-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jackson-user+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jackson-user/43ff6d08-278d-45ec-9fe1-76ea8f939c41n%40googlegroups.com.

Reply via email to