# Qual problema o MicroProfile Rest Client resolve? - [ ] A necessidade de usar JSON em vez de XML. - [x] A repetição de código (boilerplate) ao consumir manualmente serviços HTTP. - [ ] A ausência de um servidor de aplicação. - [ ] A falta de suporte a HTTPS. # Como se declara um Rest Client no MicroProfile? - [ ] Estendendo uma classe abstrata `RestClient`. - [x] Criando uma interface Java anotada com `@RegisterRestClient`. - [ ] Implementando a interface `HttpClient`. - [ ] Criando um arquivo XML de configuração. # Qual atributo da anotação `@RegisterRestClient` define a URL base do serviço remoto? - [ ] `path` - [x] `baseUri` - [ ] `url` - [ ] `endpoint` # Como injetar um Rest Client em um bean gerenciado pelo CDI? - [ ] Apenas com `@Inject`. - [ ] Apenas com `@RestClient`. - [x] Combinando `@Inject` e `@RestClient`. - [ ] Instanciando a interface diretamente com `new`. # Além de fixar a URL na anotação, como é possível configurar a URL base de um Rest Client externamente? - [ ] Não é possível, a URL deve estar sempre fixa no código. - [x] Por meio de uma propriedade no `application.properties`, no formato `{pacote.Classe}/mp-rest/url`. - [ ] Somente via variável de ambiente do sistema operacional. - [ ] Editando o arquivo `pom.xml`. # As anotações usadas na interface de um Rest Client (`@Path`, `@GET`, `@POST` etc.) são as mesmas usadas para: - [ ] Configurar o banco de dados. - [x] Criar recursos REST no lado do servidor (JAX-RS). - [ ] Definir testes unitários. - [ ] Configurar o servidor de aplicação. # Em uma arquitetura de dois microserviços (catálogo e empréstimos), qual componente é responsável por permitir que o serviço de empréstimos consulte o catálogo de livros? - [ ] Um banco de dados compartilhado. - [x] Um Rest Client configurado no serviço de empréstimos, apontando para o serviço de catálogo. - [ ] Uma fila de mensagens. - [ ] Um arquivo compartilhado em disco. # O que ocorre quando `paymentService.confirmPayment(cardNumber, value)` é chamado, sendo `paymentService` um Rest Client injetado? - [ ] Nada, é necessário implementar manualmente a chamada HTTP. - [x] O framework monta e envia a requisição HTTP correspondente, convertendo a resposta em um objeto Java. - [ ] O método lança sempre uma exceção, pois é apenas uma assinatura. - [ ] A chamada é executada localmente, sem tráfego de rede. # Extensões Maven necessárias para usar o MicroProfile Rest Client em um projeto Quarkus: - [ ] `resteasy-reactive` apenas. - [x] `rest-client` e `rest-client-jackson`. - [ ] `quarkus-jdbc-postgresql`. - [ ] `quarkus-security-jwt`.