Web服务应验证输入数据并写入数据库。之后,其他服务应读取数据并从中创建一个xml文件。Webservice动态数据传输和验证
所以服务只是做数据传输和转换(WS- *参数=>数据库)。
“动态”web服务还应该包含一组变量参数(“容器”),导致客户端变化很大并且很快,这不应该以修改接口和底层实现结束。
如何操作以及在哪里处理验证?
初始想法:
只需发送文件作为附件和带的.xsd架构“固定”和“容器”部分的.xsd模式验证它在web服务。如果可变部分仅更改用于验证的“容器”.xsd,则必须更改。容器可以是base64编码的xml。如果发生验证错误,web服务会响应一个错误。
使用所有标准项作为WSD参数并传递base64编码的容器。 WS- *对标准参数进行验证,并且只有容器针对另一个.xsd进行验证。
这些值没有逻辑/语义评估,应该稍后再做。只需要字段类型验证。
的容器应该是XML等:
... standard elements xml ...
<embeddedContainer>
<customItemsFromWSClientOne>
<reallyCustomItemA>
<substructure>
<itemABC></itemABC>
</substructure>
<anotherStructure></anotherStructure>
</reallyCustomItemA>
</customItemsFromWSClientOne>
</embeddedContainer>
... standard elements xml ...
另一客户机可以发送其他参数,如一个完整的不同结构“customItemsFromWSClientTwo”。所以这项服务将变得非常通用。
我编辑了最初的问题。 – 2012-07-16 13:04:55