Same is when you’re reading back the soap resoponse, just use SOAP message to extract body and then use JAXB parser to build model representation. I even created an apache cxf plugin to add jetbrains nullability annotations into DTOs for better kotlin support. It actually works very nicely together.