我们有一个使用 apache CXF 的 REST 服务。我们可以使用 Jersey 客户端调用此服务吗?
有什么错误吗?
Web 服务的想法是允许异构系统之间的通信。因此,无论使用什么框架来创建 Web 服务,只要客户端和服务器都符合 JAX-RS 规范,您都应该能够使用任何客户端调用它。因此,在您的情况下,您应该能够使用 jersey 客户端调用使用 Apache CFX 开发的 REST 服务。因为这两个框架都遵循 JAX-RS 规范。
如上所述,您甚至可以使用简单的 Http 客户端来使用 REST 服务。使用HTTP,您可以轻松执行GET、PUT、POST、DELETE 简单http客户端示例供您参考
URL url = null;
try {
url = new URL(urlStr);
} catch (MalformedURLException e) {
throw new Exception("Malformed URL", e);
}
HttpURLConnection con = null;
try {
if (user != null && pass != null)
Authenticator.setDefault(new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(user, pass
.toCharArray());
}
});
// end of authentication test
SSLUtilities.trustAllHostnames();
SSLUtilities.trustAllHttpsCertificates();
con = (HttpURLConnection) url.openConnection();
con.setRequestMethod("GET");
con.setAllowUserInteraction(true);
con.setDoInput(true);
con.setDoOutput(true);
con.setUseCaches(false);
con.setRequestProperty("Content-Type", ConTypeGet);
s_logger.debug("Execute GET request Content-Type: "
+ con.getRequestProperty("Content-Type"));
s_logger.debug("URL:" + url);
con.connect();