Skip to content

cul3bro/lab3-restful-ws

 
 

Repository files navigation

Build Status

Web Engineering 2020-2021 / RESTful Web services

In this assignment your PR must only modify the README.md file. Please, go to the Wiki in order to get the instructions for this assignment.

Primary goal

Complete the tests of AddressBookServiceTest to tests if the service meets the HTTP semantics. Each test in AddressBookServiceTest is incomplete. For example, the method serviceIsAlive tests if:

GET /contacts

returns an empty list, but it must be extended in order to verify that GET /contacts meets the HTTP GET contract:

  • GET request is safe (it does not modify the contents of the address book)
  • GET request is idempotent (two consecutive calls return the same).

Note: During the lab session was revealed that a subtle bug is hidden in the code that may cause you problems if the server has many concurrent requests. Finding this bug is not a requirement for this lab, but you must report me which flaw you suspect the code has (e.g. by adding a note in AddressBookServiceTest.java). I will accept your PR regardless your findings are correct or not, or even if you tell me you cannot find the bug. After accepting your PR, I will provide feedback by email on this bug if you cannot find it because I strongly believe that being aware of the problems that this bug causes and how to fix it will be helpful for your URL shortener project.

Secondary goals (:gift:)

Solutions must meet primary goals too.

Done:

  • Replace the current implementation (Jakarta Jersey) by a Spring MVC (Servlet) implementation was implemented by Raul Javierre. He has learned how to map concepts from JAX-RS to Spring MVC and how frameworks can help to obtain extra information from HTTP requests 🎁
  • CORS support was implemented by Alvaro García on the original Jakarta Jersey implementation. His PR is explains how CORS works very clearly. Worth read 🎁
  • Use JWT credentials to grant access to requests was implemented by Alberto Calvo on the original Jakarta Jersey implementation. How JWT support is implemented in frameworks may differ. For example, Spring Framework requires the use of a Filter in order to integrate JWT with Spring Security. However Jakarta Jersey is more clean and the implementation of Alberto makes easier to understand how JWT works on the server side 🎁
  • Support of OpenAPI 3.0 was implemented by Jorge García on the original Jakarta Jersy implementation. He has learned that documenting an API is an easy but tedious word. Also, it is an error prone task because the documentation may drift away from the implementation easily.

Proposed:

  • Replace the current implementation (Jakarta Jersey) by a Spring WebFlux (Reactive) implementation
  • Support asynchronous requests without using Spring WebFlux
  • Support of HTTP/2 requests
  • Support of HTTPS requests using self-signed certificate

Note: unless the goal specifies o disallows a specific framework you are free to replace the framework used in the original implementation with a different framework.

Manifest your intention first by a PR updating this README.md with your goal. If you desist of your goal, release it by a PR so other fellow can try it.

NIA User name Repo Build Status Improvement Score
740491 José Ignacio Hernández 740491/lab3-restful-ws Build Status
758803 Daniel González Uncastellum/lab3-restful-ws Build Status
758906 Raúl Javierre rauljavierre/lab3-restful-ws Build Status Trying to reimplement with Spring MVC 🎁
757153 Fran-sw lab3-restful-ws Build Status
758267 Pedro Allué piter1902/lab3-restful-ws Build Status
761319 Marcos Nuez Markles01/lab3-restful-ws Build Status
739202 Luis Garcia luisgg98/lab3-restful-ws Build Status
760739 Alberto Calvo AlbertoCalvoRubio/lab3-restful-ws Build Status Trying to use JWT credentials to grant access to requests 🎁
760704 Álvaro García Alvarogd6/lab3-restful-ws Build Status Support of CORS requests 🎁
756123 Rogelio Lacruz RogorStuff/lab3-restful-ws Build Status
766685 Enrique Ruiz Flores TheRealFreeman/lab3-restful-ws Build Status
755769 Saúl Flores Benavente saul205/lab3-restful-ws Build Status
758325 Irene Fumanal irefu/lab3-restful-ws Build Status
755742 Juan José Tambo Tambo jtambo99/lab3-restful-ws Build Status
794429 Martín Gascón 764429/lab3-restful-ws Build Status
761754 David Alloza david-AT/lab3-restful-ws Build Status
739324 Elena Morón Vidal elenamv13/lab3-restful-wsl Build Status
756308 Álvaro Santamaría SanTa45zgz/lab3-restful-ws Build Status
719974 Sergio Martínez Sergio-Martinez-97/lab3-restful-ws Build Status
738845 Víctor Martínez viriannn/lab3-restful-ws Build Status
758635 Daniel Huici Meseguer Kifixo/lab3-restful-ws Build Status
738233 Sergio Torres cul3bro/lab3-restful-ws Build Status
740241 Sergio Álvarez sergio-alv/lab3-restful-ws Build Status
737070 Daniel Barceló DaniBarcelo/lab3-restful-ws Build Status
757715 Hayk Kocharyan hayk99/lab3-restful-ws Build Status
757755 Andrés Otero García andrewknoll/lab3-restful-ws Build Status
758807 Jorge García jgarciapueyo/lab3-restful-ws Build Status Support of OpenAPI 3.0 🎁
735041 Eduardo Díaz ediazl/lab3-restful-ws Build Status
737791 Alejandro Omist Casado oumist/lab3-restful-ws Build Status
723883 Jorge Turbica turbica/lab3-restful-ws Build Status
738737 Víctor Jarreta VJarreta/lab3-restful-ws Build Status
764539 Eduardo Ruiz eduardoRuizC/lab3-restful-ws Build Status

About

Lab 3. RESTful Web Services. Deadline 2020-11-20

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%