Skip to content

sokomishalov/jackson-datatype-soap

Repository files navigation

jackson-datatype-soap

Here should be some fancy logo

Apache License 2

Overview

Jackson SOAP implementation over jackson-dataformat-xml

Distribution

Maven:

<!-- Legacy (JAXB) artifact -->
<dependency>
    <groupId>ru.sokomishalov.jackson</groupId>
    <artifactId>jackson-datatype-soap-jaxb</artifactId>
    <version>x.y.z</version>
</dependency>
<!-- New (Jakarta) artifact -->
<dependency>
    <groupId>ru.sokomishalov.jackson</groupId>
    <artifactId>jackson-datatype-soap-jakarta</artifactId>
    <version>x.y.z</version>
</dependency>

Gradle kotlin dsl:

// Legacy (JAXB) artifact
implementation("ru.sokomishalov.jackson:jackson-datatype-soap-jaxb:x.y.z")
// New (Jakarta) artifact
implementation("ru.sokomishalov.jackson:jackson-datatype-soap-jakarta:x.y.z")

Usage

Used this SOAP message for deserialization in example below.

fun main() {
    val mapper = SoapMapper()
    val content = this.javaClass.getResource("/example/get_person_output_ws_addr.xml").readText()
    val deserialized: SoapEnvelope<SoapAddressingHeaders, GetPersonOutput> = mapper.readValue(content)
    val serialized = mapper.writeValueAsString(deserialized)
}