如何在 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 模式不足。
您最好在问题中隐藏身份验证详细信息。
我得到了 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 模式不足。
您最好在问题中隐藏身份验证详细信息。