我已经使用JAX-WS构建了一个SOAP服务,并且它返回了一些排序结果,这些结果基本上按客户认为美观的顺序排序。我的后台处理没有问题,并且结果始终以正确的顺序出现。现在由wsimport生成的客户端部分在接收到这些结果时正在使用ArrayLists,这些结果不能保证在迭代时保持顺序。有什么方法可以覆盖这个?或者我可以在模式中的SOAP方面做更好的事情,这将告诉任何客户端它需要保持订单? (因为我只是知道我将不得不为此做一个C#客户端)保留SOAP结果的排序顺序
tia !!
我已经使用JAX-WS构建了一个SOAP服务,并且它返回了一些排序结果,这些结果基本上按客户认为美观的顺序排序。我的后台处理没有问题,并且结果始终以正确的顺序出现。现在由wsimport生成的客户端部分在接收到这些结果时正在使用ArrayLists,这些结果不能保证在迭代时保持顺序。有什么方法可以覆盖这个?或者我可以在模式中的SOAP方面做更好的事情,这将告诉任何客户端它需要保持订单? (因为我只是知道我将不得不为此做一个C#客户端)保留SOAP结果的排序顺序
tia !!
当它收到这些结果时使用ArrayLists,这些结果不能保证在迭代时保持顺序。
这个假设来自哪里?
The java.util.List
interface represents an ordered collection。集合中元素的顺序是至关重要的。在迭代时没有返回集合中元素的正确顺序的java.util.List
的任何实现都将破坏接口的契约。
The Javadoc for the List.iterator()
方法状态(重点煤矿):
返回适当序列在此列表中的元素的迭代器。
ArrayList返回的迭代器不违反这个。它以与底层数组相同的顺序向您返回元素。
是的你说得对,谢谢! – mezmo