Solicitudes de servicio web RESTful de la camiseta de Java

He estado siguiendo un tutorial sobre un servicio de descanso y funciona bien. Sin embargo, hay algo que no entiendo bastante todavía. Así es como se ve:

@Path("/hello")
public class Hello {

    // This method is called if TEXT_PLAIN is request
    @GET
    @Produces( MediaType.TEXT_PLAIN )
    public String sayPlainTextHello() 
    {
        return "Plain hello!";
    }

    @GET
    @Produces( MediaType.APPLICATION_JSON )
    public String sayJsonTextHello() 
    {
        return "Json hello!";
    }

    // This method is called if XML is request
    @GET
    @Produces(MediaType.TEXT_XML)
    public String sayXMLHello() {
        return "<?xml version=\"1.0\"?>" + "<hello> Hello Jersey" + "</hello>";
    }

    // This method is called if HTML is request
    @GET
    @Produces(MediaType.TEXT_HTML)
    public String sayHtmlHello() 
    {
        return "<html> " + "<title>" + "Hello fittemil" + "</title>"
                + "<body><h1>" + "Hello!" + "</body></h1>" + "</html> ";
    }
} 

Lo que me molesta es que no puedo hacer uso de las operaciones correctas. Cuando solicito el servicio desde un navegador, se llama al método apropiado sayHtmlHello (). Pero ahora estoy desarrollando una aplicación para Android que quiero obtener el resultado en Json. Pero cuando llamo al servicio desde la aplicación, se llama al método MediaType.TEXT_PLAIN. Mi código de Android se parece a esto:

Hacer una solicitud HTTP con Android

¿Cómo puedo llamar al método que usa MediaType.APPLICATION_JSON desde mi aplicación de Android? Además, me gustaría hacer que ese método en particular devuelva un objeto, sería genial si también obtuviera alguna orientación allí.

Respuestas a la pregunta(2)

Su respuesta a la pregunta