如何在 Spring 引导中像对象一样使用 soap?

How work with soap in Spring boot like an object?

我得到了 soap 项目,它适用于 xsd 文件。但我不知道如何使用肥皂。 我如何像处理对象一样处理 xsd 文件? 我需要什么,从数据库中获取一些数据,将值设置为对象,映射到 xsd 文件并发送到带有 xsd 文件正文的请求 XSD:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
              xmlns:xro="http://x-road.eu/xsd/xroad.xsd"
              xmlns:iden="http://xroad.eu/xsd/identifiers"
              xmlns:erec="http://testrecord_service.x-road.ee/testrecord">

<soapenv:Header>
    <xro:protocolVersion>4.0</xro:protocolVersion>
    <xro:issue>123</xro:issue>
    <xro:id>123</xro:id>
    <xro:userId>123</xro:userId>

    <xro:service iden:objectType="SERVICE">
        <iden:xRoadInstance>central-server</iden:xRoadInstance>
        <iden:memberClass>test</iden:memberClass>
        <iden:memberCode>test coed</iden:memberCode>
        <!--Optional:-->
        <iden:subsystemCode>test-service</iden:subsystemCode>
        <iden:serviceCode>testrecord</iden:serviceCode>
        <!--Optional:-->
        <iden:serviceVersion>v1</iden:serviceVersion>
    </xro:service>

    <xro:client iden:objectType="SUBSYSTEM">
        <iden:xRoadInstance>test-server</iden:xRoadInstance>
        <iden:memberClass>test</iden:memberClass>
        <iden:memberCode>testcode</iden:memberCode>
        <!--Optional:-->
        <iden:subsystemCode>test-service</iden:subsystemCode>
    </xro:client>

</soapenv:Header>

<soapenv:Body>
    <erec:Authentication>
        <erec:companyIdentifier>cc93a8c3-465d-4813-a442-
            69539692e0a1</erec:companyIdentifier>
        <erec:pin>12345</erec:pin>
    </erec:Authentication>
</soapenv:Body>
</soapenv:Envelope>

哦..我看到xroad :)。使用 maven-jaxb2-plugin 从 xsd 生成 pojo 模型。从数据库中抓取数据,映射到之前生成的pojo中,传给ws客户端

请注意 xroad 的一些 xsd 模式不足。

您最好在问题中隐藏身份验证详细信息。