Questo codice funziona bene se trasferisco una classe (MyClass) che ha @XmlRoolElementCome trasferire un elenco di Primitive con Jersey + JAXB + JSON
client
WebResource webResource = restClient.resource(getRessourceURL());
return webResource.get(new GenericType<List<MyClass>>(){});
Ma se provo per trasferire un primitivo, come String, Integer, booleano, ecc ...
client
WebResource webResource = restClient.resource(getRessourceURL());
return webResource.get(new GenericType<List<Integer>>(){});
sto ottenendo l'errore:
grado di maresciallo tipo "java.lang.Integer" come un elemento perché manca un'annotazione @XmlRootElement
ottengo esattamente lo stesso risultato quando si invia un parametro di un'entità alla mia richiesta:
client
WebResource webResource = restClient.resource(getRessourceURL());
return webResource.post(new GenericType<List<Integer>>(){}, Arrays.toList("1"));
Server
@GET
@Path("/PATH")
@Produces(MediaType.APPLICATION_JSON)
public List<MyClass> getListOfMyClass(List<Integer> myClassIdList)
{
return getMyClassList(myClassIdList);
}
C'è un modo per tranfer questo tipo di lista senza creare una classe wrapper per ciascuno di questi tipo primitivo ?? O mi manca qualcosa di ovvio?