我正在使用Ladon
在Python中公开Web服务。我有一个LadonType
如下:
class Message(LadonType):
msg_from = PORTABLE_STRING
reply1 = PORTABLE_STRING
reply2 = PORTABLE_STRING
department = PORTABLE_STRING
date = PORTABLE_STRING
现在,当我生成WSDL时,它看起来像这样:
<xsd:complexType name="Message">
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="date" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="1" name="department" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="1" name="msg-from" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="1" name="reply1" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="1" name="reply2" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
也就是说,生成的WSDL中的元素顺序与我在编写Message
类时定义的顺序相同。
此外,在soap响应中,无法控制复杂结构的每个单独元素,并且它们是任意生成的。但是因为在生成的WSDL中,</xsd:sequence>
不应该维护订单?我的客户也需要维护订单。
我可以在复杂结构LadonType
对象中控制和设置元素的固定顺序吗?