Я использую JAX-RS через RestEasy в JBoss AS 6. Когда мой ресурс JAX-RS возвращает коллекцию элементов (например, через список), RESTEasy всегда использует имя collection
в качестве корневого элемента.
например.
<collection>
<item>
<description>computer</description>
<price>2500</price>
</item>
<item>
<description>tv</description>
<price>1500</price>
</item>
</collection>
Этот XML генерируется, например:
@Produces("application/xml")
@Path("xml")
@RequestScoped
public class MyResource {
@GET
@Path("myitems")
public List<Item> getMyItems() {
return ...
}
}
Как видно, корневой тег, созданный RESTEasy, всегда <collection>
.
Джерси, с другой стороны, всегда создает имя, которое представляет собой множественную форму элемента, содержащегося в списке:
<items>
<item>
<description>computer</description>
<price>2500</price>
</item>
<item>
<description>tv</description>
<price>1500</price>
</item>
</items>
Я знаю, что можно создать тип-оболочку и вернуть это вместо List, но это довольно сложное обходное решение и делает код более сложным.
Можно ли легко указать, какое имя корневого тега для коллекций?