willesreis commented on a change in pull request #681:
URL: https://github.com/apache/tomee/pull/681#discussion_r454598026



##########
File path: examples/mp-rest-client/README_pt.adoc
##########
@@ -0,0 +1,150 @@
+= Cliente Rest MicroProfile
+:index-group: MicroProfile
+:jbake-type: page
+:jbake-status: published
+
+Este é um exemplo básico sobre como configurar e utilizar o Cliente Rest do 
MicroProfile no Tomee.

Review comment:
       ```suggestion
   Este é um exemplo básico sobre como configurar e utilizar o Cliente Rest do 
MicroProfile no TomEE.
   ```

##########
File path: examples/mp-rest-client/README_pt.adoc
##########
@@ -0,0 +1,150 @@
+= Cliente Rest MicroProfile
+:index-group: MicroProfile
+:jbake-type: page
+:jbake-status: published
+
+Este é um exemplo básico sobre como configurar e utilizar o Cliente Rest do 
MicroProfile no Tomee.
+
+[source,java]
+----
+mvn clean test 
+----
+
+=== Requisitos e configuração
+
+Para usar o MicroProfile Rest Client, são necessárias 3 alterações no seu 
projeto:
+
+[arabic]
+. Adicione a seguinte dependência ao `pom.xml`:
++
+[source,java]
+----
+ <dependency>
+     <groupId>org.eclipse.microprofile.rest.client</groupId>
+     <artifactId>microprofile-rest-client-api</artifactId>
+     <version>${microprofile.rest-client.version}</version>
+     <scope>provided</scope>
+ </dependency>
+----
+. Forneça o arquivo de configuração: `microprofile-config.properties`
++
+[source,java]
+----
+ org.superbiz.rest.BookResourceClient/mp-rest/url=http://localhost:4444
+----
+. Forneça uma interface que você possa criar a partir do recurso JAX-RS que 
deseja consumir: `BookResourceClient.java`
++
+[source,java]
+----
+ package org.superbiz.rest;
+
+ import org.eclipse.microprofile.rest.client.inject.RegisterRestClient;
+ import javax.enterprise.context.Dependent;
+ import javax.ws.rs.*;
+ import javax.ws.rs.core.MediaType;
+ import java.util.List;
+
+ @Dependent
+ @RegisterRestClient
+ @Path("/test/api/library")
+ @Produces(MediaType.APPLICATION_JSON)
+ @Consumes(MediaType.APPLICATION_JSON)
+ public interface BookResourceClient {
+
+     @GET
+     String status();
+
+     @POST
+     @Path("/books")
+     void addBook(Book newBook);
+
+     @DELETE
+     @Path("/books/{id}")
+     void deleteBook(@PathParam("id") int id);
+
+     @PUT
+     @Path("/books")
+     void updateBook(Book updatedBook);
+
+     @GET
+     @Path("/books/{id}")
+     Book getBook(@PathParam("id") int id);
+
+     @GET
+     @Path("/books")
+     List<Book> getListOfBooks();
+
+ }
+----
+
+=== Usando o Client Rest do MicroProfile no TomEE
+
+A classe `BookResourceTest.java` mostra como é fácil usar a abordagem de 
segurança de tipo fornecida pelo MicroProfile Client Rest para consumir um 
recurso JAX-RS existente.
+
+[source,java]
+----
+package org.superbiz.rest;
+
+import org.eclipse.microprofile.rest.client.inject.RestClient;
+import org.jboss.arquillian.container.test.api.Deployment;
+import org.jboss.arquillian.junit.Arquillian;
+import org.jboss.shrinkwrap.api.ShrinkWrap;
+import org.jboss.shrinkwrap.api.asset.StringAsset;
+import org.jboss.shrinkwrap.api.spec.WebArchive;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+import javax.inject.Inject;
+
+import static org.junit.Assert.assertTrue;
+
+@RunWith(Arquillian.class)
+public class BookResourceTest {
+
+    @Deployment()
+    public static WebArchive createDeployment() {
+        final WebArchive webArchive = ShrinkWrap.create(WebArchive.class, 
"test.war")
+                .addClass(BookResource.class)
+                .addClass(Book.class)
+                .addClass(BookBean.class)
+                .addClass(BookResourceClient.class)
+                .addClass(ApplicationConfig.class)
+                .addAsWebInfResource(new StringAsset("<beans/>"), "beans.xml")
+                .addAsResource("META-INF/microprofile-config.properties");
+        return webArchive;
+    }
+
+
+    @Inject
+    @RestClient
+    private BookResourceClient bookResourceClient;
+
+    @Test()
+    public void testServerStatus(){
+        bookResourceClient.addBook(new Book(1,"TomEE Book"));
+    }
+
+    @Test
+    public void testBookResource(){
+        bookResourceClient.addBook(new Book(1, "TomEE and MicroProfile 
Adventures"));
+        bookResourceClient.addBook(new Book(2, "Top 10 Tomee Configuraiton 
Tips"));
+
+
+        assertTrue(bookResourceClient.getListOfBooks().size() == 2);
+        
assertTrue(bookResourceClient.getBook(1).getName().equalsIgnoreCase("TomEE and 
MicroProfile Adventures"));
+
+        bookResourceClient.deleteBook(1);
+        assertTrue(bookResourceClient.getListOfBooks().size() == 1);
+        
assertTrue(bookResourceClient.getBook(2).getName().equalsIgnoreCase("Top 10 
Tomee Configuraiton Tips"));
+
+        bookResourceClient.updateBook(new Book(2, "Top 3 Tomee Configuraiton 
Tips"));
+        assertTrue(bookResourceClient.getListOfBooks().size() == 1);
+        
assertTrue(bookResourceClient.getBook(2).getName().equalsIgnoreCase("Top 3 
Tomee Configuraiton Tips"));
+    }
+
+}
+----
+
+=== Sobre a arquitetura de teste
+
+Os casos de teste para este projeto são criados usando o Arquillian e o TomEE 
Remote. A configuração Arquillian pode ser encontrada em 
`src/test/resources/arquillian.xml`.

Review comment:
       ```suggestion
   Os casos de teste para este projeto são criados usando o Arquillian e o 
TomEE Remote. A configuração do Arquillian pode ser encontrada em 
`src/test/resources/arquillian.xml`.
   ```




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to