在unmarshall响应之后过滤soap webservice的结果

时间:2015-05-28 10:05:48

标签: java web-services xslt soap jaxb

我收到了来自soap webservice的回复,在我解组响应之后,我有一个类似于此的对象层次结构响应:

products
result 1 price=12
 collection_method_1
 from=1 to=3     
result 2 price=14
 collection_method_1
 from=1 to=3
result 3 price=15
 collection_method_2
 from=2 to=5
result 4 price=16
 collection_method_2
 from=1 to=5     
result 5 price=17
 collection_method_2
 from=1 to=2
result 6 price=18
 collection_method_2
 from=1 to=4
result 7 price=19
 collection_method_2
 from=2 to=3
result 8 price=21
 collection_method_2
 from=3 to=4
result 9 price=22
 collection_method_2
 from=4 to=5
legend
locations
 location 1 text="" 
 location 2 text=""
 location 3 text=""
 location 4 text=""
 location 5 text=""
 location 6 text=""
locations
collection_methods
 collection_method_1 text=""
 collection_method_2 text="" 
collection_methods
legend
products

这是在Java,JAXB ...(或任何其他技术)中从要从响应中删除的图例中给出位置X的最佳方法,删除具有此位置的所有结果?请注意,在"来自"的响应中引用了位置。和"到"。 有什么建议吗?

感谢

问候

1 个答案:

答案 0 :(得分:1)

使用SOAP最好的方法是使用一些XSLT将返回的消息转换为您所需的格式。

更多选择 1:使用JAXB将输出转换为某些集合并使用它 2.如果要丢弃大​​量数据并且只需要导航到一段数据,请使用SAX而不是JAXB。