2011-12-05 129 views
0

問題的細節:RestEasy的+拋棄RestEasy的拋棄單元陣列錯誤

當陣列具有兩個元素的格式是:

{"MyArray" : {"Array" : [{"a" : 1, "b" : 2}, {"a" : 3, "b" : 4}]}} 

但是當陣列具有單獨的元件,所述格式是:

{"MyArray" : {"Array" : {"a" : 1, "b" : 2}}} ***Missing the [] 

RestEasy默認使用Jettison Mapped格式,它具有單個元素列表的已知限制,不會將其作爲數組返回。按照這個討論,提出的解決方案是使用Jackson,但是如果這不是一種選擇,有沒有辦法使用RestEasy + Jettison並解決單個元素數組問題?

澤西島有這個問題的解決方案,它使用JSONJAXBContext,但我如何解決這個RestEasy?

+0

嗨,我有同樣的問題。你有答案嗎? –

+1

我終於搬到了傑克遜。找不到與Jettison合作的方法。 – user1028365

回答

1

您可以嘗試StAXON代替Jettiison的 - http://beckchr.github.com/staxon/

隨着StAXON您可以到數組元素提供路徑。維基有一個例子:https://github.com/beckchr/staxon/wiki/Using-JAX-RS

+0

感謝您的回覆......但是如果我能擺脫Jettison,這將是一個簡單的解決方案。不幸的是,我們被Jettison卡住,想要解決這個問題。有什麼想法嗎? – user1028365

+1

你爲什麼堅持使用Jettison?你所要做的就是向模型類(或資源方法)添加一個@JsonXML註釋,它將「/ Array」列爲區域路徑。 – chris