由于 RESTful Web 服务是基于 url 的,而不是对象,我们不能调用它们的方法。我有一个简单的 Web 服务,其中只有一种方法是 @GET
。我看到一个截屏视频,它使用一些 javascript 库来使用 Web 服务。但是,如何将它用于我的 JSF 项目?我什至不能像普通的网络服务那样注入(inject)它。请帮忙。我是 REST 的新手。我不能在我的托管 bean 中使用它吗?
如果使用 web 服务的唯一方法是通过 javascript,这里有人可以给我详细说明如何通过 JQuery 使用它吗?
提前致谢:)
最佳答案
您可以毫无问题地在托管 bean 中使用它。 RESTful Web 服务通常返回 JSON 或 XML 格式的对象。您可以调用 restful web 服务,并根据其响应的格式,使用 XML 解析器或 JSON 解析器对其进行解析,或者甚至更好地使用映射器将响应映射到 Java 对象并在您的应用程序的其他地方使用它。
讨论了 Java-JSON 映射库 here (screen capture here)。
您可以使用 JAXB 进行 XML-Java 映射:https://jaxb.dev.java.net/tutorial/
XML 映射器,将 XML 文档映射到 Java 对象。
例如,如果您使用的 Web 服务的响应是:
<SampleResponse>
<firstName>James</firstName>
<lastName>Gosling</lastName>
</SampleResponse>
XML 映射器可以将其转换为以下类的实例:
public class SampleResponse {
private String firstName;
private String lastName;
// setters and getters
}
像这样:
SampleResponse myResponseObj = mapper.fromXML(xmlRespnse);
JSON 映射器以类似的方式工作。
关于java - 如何在我的 JSF 项目中使用 RESTful Web 服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2984106/