Praca z RESTem wygląda różnie. Czasem używa się JAX-RS Client API, czasem Apache HttpClient.
Generalnie ja robiłem tak z SOAP, że budowałem sobie service, który korzystał klasy z wygenerowanego kodu za pomocą wsimport (taki wrapper). A service używałem tak jak zawsze, za pomocą DI. Podobne trochę do obsługi bazy danych, tyle że zamiast bazy danych był ws.
Jeśli chodzi o klasy wsimport to są one budowane przy każdym budowaniu projektu (maven). Jest to o tyle fajne, że jeśli WSDL się zmieni (np. zostanie dodana nowa metoda), to wystarczy go zaktualizować, a maven zbuduje odpowiednie klasy odpowiedzialne za komunikację.
Według mojego subkietywnego odczucia praca z WSDL jest szybsza niż praca z REST (JAX-RS 2.0 Client API) w przypadku komunikacji Java - Java.