I've implemented two way binding in templates, in a proprietary templating/UI language on the JVM. Thymeleaf, iirc, is one way binding. Don't know anything about Jackson, so I can't really say.
When properties are implemented in the language proper then wiring everything together is much cleaner: find references, etc, all "just work". If not, there is a distinction between the template language and the host language that has to be addressed with tooling, or (usually) ignored.
A language that supports properties can make this trivial for both the inward and outward binding.
Otherwise you end up with janky stuff like JavaBeans or whatever.