Este conteúdo não está disponível no idioma selecionado.
17.6. Arrays and Collections of JAXB Objects
RESTEasy automatically marshals arrays, java.util.Sets, and java.util.Lists of JAXB objects to and from XML, JSON, Fastinfoset, and other RESTEasy JAXB mappers.
@XmlRootElement(name = "customer")
@XmlAccessorType(XmlAccessType.FIELD)
public class Customer
{
@XmlElement
private String name;
public Customer()
{
}
public Customer(String name)
{
this.name = name;
}
public String getName()
{
return name;
}
}
@Path("/")
public class MyResource
{
@PUT
@Path("array")
@Consumes("application/xml")
public void putCustomers(Customer[] customers)
{
Assert.assertEquals("bill", customers[0].getName());
Assert.assertEquals("monica", customers[1].getName());
}
@GET
@Path("set")
@Produces("application/xml")
public Set<Customer> getCustomerSet()
{
HashSet<Customer> set = new HashSet<Customer>();
set.add(new Customer("bill"));
set.add(new Customer("monica"));
return set;
}
@PUT
@Path("list")
@Consumes("application/xml")
public void putCustomers(List<Customer> customers)
{
Assert.assertEquals("bill", customers.get(0).getName());
Assert.assertEquals("monica", customers.get(1).getName());
}
}
@XmlRootElement(name = "customer")
@XmlAccessorType(XmlAccessType.FIELD)
public class Customer
{
@XmlElement
private String name;
public Customer()
{
}
public Customer(String name)
{
this.name = name;
}
public String getName()
{
return name;
}
}
@Path("/")
public class MyResource
{
@PUT
@Path("array")
@Consumes("application/xml")
public void putCustomers(Customer[] customers)
{
Assert.assertEquals("bill", customers[0].getName());
Assert.assertEquals("monica", customers[1].getName());
}
@GET
@Path("set")
@Produces("application/xml")
public Set<Customer> getCustomerSet()
{
HashSet<Customer> set = new HashSet<Customer>();
set.add(new Customer("bill"));
set.add(new Customer("monica"));
return set;
}
@PUT
@Path("list")
@Consumes("application/xml")
public void putCustomers(List<Customer> customers)
{
Assert.assertEquals("bill", customers.get(0).getName());
Assert.assertEquals("monica", customers.get(1).getName());
}
}
Copy to ClipboardCopied!Toggle word wrapToggle overflow
The resource above publishes and receives JAXB objects. We assume that these are wrapped in a collection element like the following:
Copy to ClipboardCopied!Toggle word wrapToggle overflow
You can change the namespace URI, namespace tag, and collection element name by using the @org.jboss.resteasy.annotations.providers.jaxb.Wrapped annotation on a parameter or method:
Ajudamos os usuários da Red Hat a inovar e atingir seus objetivos com nossos produtos e serviços com conteúdo em que podem confiar. Explore nossas atualizações recentes.
Tornando o open source mais inclusivo
A Red Hat está comprometida em substituir a linguagem problemática em nosso código, documentação e propriedades da web. Para mais detalhes veja o Blog da Red Hat.
Sobre a Red Hat
Fornecemos soluções robustas que facilitam o trabalho das empresas em plataformas e ambientes, desde o data center principal até a borda da rede.