Passando Parâmetros de Consulta indefinidos com URL REST e lendo-os em RESTEasy

Eu tenho um requisito para projetar um serviço RESTful usando RESTEasy. Os clientes podem chamar esse serviço comum com qualquer número de parâmetros de consulta que desejem. Meu código REST deve ser capaz de ler esses Params de consulta de alguma forma. Por exemplo, se eu tiver um serviço de pesquisa de livros, os clientes poderão fazer as seguintes chamadas.

http://domain.com/context/rest/books/searchBook?bookName=someBookName
http://domain.com/context/rest/books/searchBook?authorName=someAuthor& pubName=somePublisher
http://domain.com/context/rest/books/searchBook?isbn=213243
http://domain.com/context/rest/books/searchBook?authorName=someAuthor

Eu tenho que escrever uma classe de serviço como abaixo para lidar com isso.

@Path("/books")
   public class BookRestService{

    // this is what I currently have, I want to change this method to in-take all the 
    // dynamic parameters that can come
    @GET
    @Path("/searchBook")
    public Response searchBook(@QueryParam("bookName") String bookName,@QueryParam("isbn") String isbn) {

     // fetch all such params
     // create a search array and pass to backend

    }

    @POST
    @Path("/addBook")
    public Response addBook(......) {
    //....
     }
    }

Desculpe pelo formato incorreto (não consegui entender como a formatação do código funciona neste editor!). Como você pode ver, eu preciso alterar o método searchBook () para que ele receba qualquer número de parâmetros de consulta.

Eu vi um post semelhante aqui, mas não consegui encontrar a solução certa.

Como projetar uma URL RESTful para pesquisa com parâmetros opcionais?

Alguém poderia lançar alguma luz sobre isso, por favor?

questionAnswers(2)

yourAnswerToTheQuestion