2010-10-20 124 views
4

是否可以控制通過JAXB生成的文檔中的命名空間的順序?我知道,它與XML標準無關,但我們需要按特定順序生成名稱空間聲明? 例如,目前我們已經產生JAXB命名空間訂單

<rootelement a="http://www.example.com/xom" b="http://www.example.com/crops"> 
.. 
</rootelement> 

但我需要:

<rootelement b="http://www.example.com/crops" a="http://www.example.com/xom"> 
.. 
</rootelement> 
+0

你不能控制元素中屬性的順序,所以我懷疑你可以控制命名空間的順序。 – musiKk 2010-10-20 14:22:11

+0

謝謝,但我們可以通過使用@XMLType propOrder來控制訂單。雖然它與遵從XML標準無關 – anergy 2010-10-20 14:34:02

回答

6

JAXB不直接支持,但你可以封你的對象的ContentHandler,XMLStreamWriter或XMLEventWriter的,採取的護理名稱空間和屬性排序。