オブジェクトをマーシャリングするためにJAXBを使用してJAX-RSを作成しています。NameValuePair
PascalCaseで送信したい単純なオブジェクトがあります。キャメルケースラッパーでラップされていることを除いて、すべてが機能します<nameValuePairs>
。
これは私のクラスです:
@XmlRootElement(name = "NameValuePair")
public class NameValuePair implements Serializable {
private String name = null;
private String value = null;
public NameValuePair( String name, String value ) {
this.name = name;
this.value = value;
}
@XmlElement(name = "Name")
public String getName() {
return name;
}
@XmlElement(name = "Value")
public String getValue() {
return value;
}
}
使用方法は次のとおりです。
public Response getNameValuePairs() {
NameValuePair[] nameValuePairs;
try {
nameValuePairs = manager.getNameValuePairs();
} catch (Exception e) {
return Response
.status(Response.Status.INTERNAL_SERVER_ERROR)
.build();
}
return Response
.status(Response.Status.OK)
.entity(nameValuePairs)
.build();
}
ただし、返されるXMLは次のようになります。
<nameValuePairs>
<NameValuePair>
<Name>A Name</Name>
<Value>1</Value>
</NameValuePair>
<NameValuePair>
<Name>Another Name</Name>
<Value>2</Value>
</NameValuePair>
</nameValuePairs>
スキーマの残りの部分と一致するように変更<nameValuePairs>
するにはどうすればよいですか?<NameValuePairs>