2010-06-06 16 views
6

Usługi internetowe RESTful oparte na adresach URL nie są obiektami, nie można na nie wywoływać metod. Mam prostą usługę WWW z jedną tylko metodą: jest to @GET. Widziałem jeden screencast i korzystałem z biblioteki javascript, aby skonsumować serwis internetowy. Ale w jaki sposób mogę go używać z moim projektem JSF? Nie mogę nawet wstrzyknąć go jak normalnej usługi internetowej. Proszę pomóż. Jestem nowy w REST. Nie mogę go użyć w zarządzanym komponencie bean?Jak korzystać z usług RESTful w moim projekcie JSF?

Jeśli jedynym sposobem na skonsumowanie usługi przez JavaScript jest javascript, czy ktoś może podać mi szczegóły, jak go używać w JQuery?

góry dzięki :)

Odpowiedz

9

Można spożywać ją w zarządzanym fasoli bez problemu. Usługi RESTful Web zazwyczaj zwracają obiekty w formacie JSON lub XML. Możesz wywołać restful serwis internetowy iw zależności od formatu jego odpowiedzi, przeanalizować go za pomocą analizatora składni XML lub parsera JSON, lub jeszcze lepiej użyć programu odwzorowującego, aby odwzorować odpowiedź na obiekt Java i użyć go w innym miejscu w aplikacji.

Biblioteki odwzorowań Java-JSON są omówione here (screen capture here).

Można użyć JAXB do mapowania XML Java: https://jaxb.dev.java.net/tutorial/

odwzorowujący XML, mapy dokumentu XML do obiektu Java.

Na przykład, jeśli odpowiedź z serwisu internetowego, którego używasz jest:

<SampleResponse> 
<firstName>James</firstName> 
<lastName>Gosling</lastName> 
</SampleResponse> 

XML odwzorowujący można przekonwertować do instancji następujących klas:

public class SampleResponse { 
private String firstName; 
private String lastName; 
// setters and getters 
} 

W pewnym sensie w ten sposób:

SampleResponse myResponseObj = mapper.fromXML(xmlRespnse); 

Mappers JSON działają w podobny sposób.

+0

Przepraszam, ale nie rozumiem, czym jest mapper i jakie parsery? Skąd otrzymuję te parsery? Jeśli możesz podać kilka linków do samouczka, będę bardzo wdzięczny. – TCM

+0

Mappery JSON są już omówione tutaj: http://stackoverflow.com/questions/338586/a-better-java-json-library Możesz chcieć użyć JAXB do odwzorowania odpowiedzi XML na obiekty Java: https: // jaxb .dev.java.net/tutorial/ – Behrang

+0

Odsyłacze do mapera JSON są zepsute. –

Powiązane problemy