rest1
* tylko format JSON

rest2
W tej wersji usługi REST:
* obsługa całego katalogu zasobów zapisana jest w jednej klasie, a poszczególne metody mają własne adnotacje @Path
* metody w klasie ROgloszenia obsługują wiele typów zawartości
* osobne klasy dostarczają danych tylko w jednym formacie XML, JSON, HTML - dla wygody testowania z przeglądarki
* do klas modelu dodaliśmy adnotacje JAXB - wpływają zarówno na wersję XML jak i JSON
* zdjęcie jest zwaracane jako byte[]

rest3
W tej wersji:
* są oddzielne klasy do obsługi całego katalogu (ROgloszenia) i pojedynczego rekordu (ROgloszenie), rozróżniane na podstawie @Path
* dla tych samych adresów dostępne są różne typy zawartości,
* zdjęcie jest zwracane jako File.


rest4
W tej wersji:
* są oddzielne klasy do obsługi całego katalogu (ROgloszenia) i pojedynczego rekordu (ROgloszenie), rozróżniane na podstawie @Path
* parametr id jest wstrzykiwany na poziomie klasy,
* dla tych samych adresów dostępne są różne typy zawartości,

rest5
W tej wersji usługi REST:
* obsługa różnych URL-i jest realizowana za pomocą podzasobów (np. ROgloszenie, RCena)
* metody w klasie ROgloszenia i ROgloszenie obsługują wiele typów zawartości wynikowej - wybór na podstawie preferencji klienta podanej w Accept
* błędy są zgłaszane za pomocą WebApplicationException (niektóre)


rest6:
W tej wersji usługi REST:
* Wszystkie odpowiedzi są generowane jako obiekty klasy Response.
* Wyjątki są obsługiwane wewnątrz metod, a odpowiedzi z błędami są budowane dynamicznie też jako obiekty Response (duplikacja kodu - sorry)
* Pokazane są wybrane (pasujące do przykładu) możliwości Response, jak:
  - zwracanie odpowiedzi pozytywnej,
  - zwracanie alternatywnych kodów HTTP (404, 500, 204) za pomocą status() lub dedykowanych metod tworzących odpowiedź
  - w metodzie POST zwracanie kodu Created z nagłówkiem Location wskazującym zapisany rekord
  - dla ogloszenie/X/sprzedawca zwracanie przekierowania do adresu sprzedawcy
