そのため、XStream を使用して xml レスト レスポンスを作成していますが、フィールドの順序に少し問題があります。変換されたクラスで定義された順序とも、1.2.2 リリースの問題の 1 つとして言及されている反対の宣言順序とも一致しません (私は 1.4.4 リリースを使用しています)。
したがって、私のクラスが次のようになったとします。
person:
name
age
gender
出力の順序は
age gender name
これらを注文する方法について誰かアドバイスはありますか?私が見つけることができるほとんどの投稿はセッターの順序を参照していますが、私はちょうど Person コンストラクターを使用しており、Spring + XStream が自動的に変換を処理できるようにしています。
編集: 構成部分:
<bean
class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
<property name="order" value="1" />
<property name="mediaTypes">
<map>
<entry key="xml" value="application/xml"/>
</map>
</property>
<property name="defaultViews">
<list>
<bean class="org.springframework.web.servlet.view.json.MappingJacksonJsonView" />
<bean class="org.springframework.web.servlet.view.xml.MarshallingView">
<constructor-arg>
<bean class="org.springframework.oxm.xstream.XStreamMarshaller">
<property name="autodetectAnnotations" value="true" />
<property name="supportedClasses">
<list>
<value>com.jackdans.model.InterestingPeople</value>
</list>
</property>
</bean>
</constructor-arg>
</bean>
</list>
</property>
</bean>