Service REST qui accepte et renvoie l'objet. Comment écrire client?

J'ai déclaré deux services web REST. Celui qui retourne simplement un objet. Et d'autres qui accepte un objet et renvoie un autre objet.
POJO Order.java est utilisée.

@XmlRootElement
public class Order {

   private String id;

   private String description;

   public Order() {
   }

   @XmlElement
   public String getId() {
          return id;
   }
   @XmlElement
   public String getDescription() {
          return description;
   }

    //Other setters and methods
}

Webservice est défini comme

@Path("/orders")
public class OrdersService {
//Return the list of orders for applications with json or xml formats
@Path("/oneOrder")
@GET
@Produces({MediaType.APPLICATION_JSON})
public  Order getOrder_json() {
  System.out.println("inside getOrder_json");
  Order o1 = OrderDao.instance.getOrderFromId("1");
  System.out.println("about to return one order");
  return o1;
}

@Path("/writeAndIncrementOrder")
@GET
@Produces({MediaType.APPLICATION_JSON})
@Consumes({MediaType.APPLICATION_JSON})
public  Order writeAndIncrementOrder(Order input) {
  System.out.println("inside writeAndIncrementOrder");
  Order o1 = new Order();
  o1.setId(input.getId()+1000);
  o1.setDescription(input.getDescription()+"10000");
  System.out.println("about to return one order");
  return o1;
 }

Je pourrais écrire du code client pour appeler le service web que ne pas accepter n'importe quoi, mais renvoie l'objet. Client code est comme suit

import java.net.URI;
import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;
import javax.ws.rs.client.Invocation.Builder;
import javax.ws.rs.client.WebTarget;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import javax.ws.rs.core.UriBuilder;
import org.glassfish.jersey.client.ClientConfig;

public class Test {

public static void main(String[] args) {

WebTarget target2 = client.target(getBaseURI()).path("rest").path("orders");
String o2 = target2.path("oneOrder").request().accept(MediaType.APPLICATION_JSON).get(String.class);
        System.out.println(o2);
}

private static URI getBaseURI() {
    return UriBuilder.fromUri("http://localhost:8090/FirstRESTProject").build();
  }

Mais je ne comprends pas comment appeler un autre service qui accepte ainsi que renvoie l'objet.
J'ai essayé différentes solutions données sur internet. Mais rien n'a fonctionné pour moi. Une solution ne fonctionne que pour l'envoi de l'objet et certains ne fonctionne que pour les accepter. Mais aucun n'a fonctionné pour faire les deux en un seul appel.

MODIFIER
Comme suggéré ci-dessous la réponse que j'ai enregistré JacksonJaxbJsonProvider.class Mais l'auto-conversion en objets d'Ordre n'est pas le cas.

        String o2 = target2.path("oneOrder").request().accept(MediaType.APPLICATION_JSON).get(String.class);

        client.register(JacksonJaxbJsonProvider.class);
        Order o4 = target2.path("oneOrder").request().accept(MediaType.APPLICATION_JSON).get(Order.class);

Dans le programme ci-dessus j'ai réussi à obtenir string {"id":"1","description":"C'est la 1ère commande"} Mais l'obtention d'objet direct déclenche une erreur
MessageBodyReader pas trouvé le type de support=application/json, type=shopping de classe.panier.om.L'ordre, genericType=shopping de classe.panier.om.Ordre.

Le code actuel, vous avez pour votre client est pour le Jersey/JAX-RS 2, mais votre web.xml implique que vous utilisez Jersey 1. Quel est le problème? Sont le serveur et le client d'un même projet? Si oui, vous voudrez peut-être faire quelques modifications à vos dépendances. Si vous avez besoin d'aide, s'il vous plaît montrer votre dépendances, et de préciser si vous souhaitez utiliser Maillot 1 ou 2. Les deux ne sont pas bien jouer ensemble dans le même projet. Même si vous en utilisant uniquement 2 pour le client.
Je suis vraiment confus. Chaque suggestion que je reçois j'ai essayer de modifier le code. Puis-je ajouter quelques pots. Maintenant, mon client et le serveur ont tous deux beaucoup de pots. Je ne sais pas laquelle tous les besoins et tous les est la bonne combinaison.
Êtes-vous à l'aide de Maven? Et la version de Jersey êtes-vous essayer, à utiliser?
Essayez target2.register(JacksonJaxbJsonProvider.class)
Je ne suis pas à l'aide de Maven. Je suis la création de projets dans Eclipse.Et les deux sont différents projets.

OriginalL'auteur Kaushik Lele | 2015-03-14