¿Cómo convertir fácilmente un BufferedReader a una cadena?

@POST
@Path("/getphotos")
@Produces(MediaType.TEXT_HTML)
public String getPhotos() throws IOException{
    // DataInputStream rd = new DataInputStream(request.getInputStream());
    BufferedReader rd = new BufferedReader(
        new InputStreamReader(request.getInputStream(), "UTF-8")
    );
    String line = null;
    String message = new String();
    final StringBuffer buffer = new StringBuffer(2048);
    while ((line = rd.readLine()) != null) {
        // buffer.append(line);
        message += line;
    }
    System.out.println(message);
    JsonObject json = new JsonObject(message);
    return message;
}

El código de arriba es para mi servlet. Su propósito es obtener una transmisión, crear un archivo Json y luego enviar el Json al cliente. Pero para hacer Json, tengo que leer.BufferedReader objetord utilizando un bucle "while". Sin embargo me gustaría convertirrd para encadenar en tan pocas líneas de código como sea posible. ¿Cómo puedo hacer eso?

Respuestas a la pregunta(4)

Su respuesta a la pregunta