JAX-RS
JAX-RS
Jakarta RESTful Web Services に改名?
https://jakarta.ee/specifications/restful-ws/
RESTベースのJava Web Services, Web API
JSONやXMLでAPIをつつくRESTをJavaにマッピングする標準方式
Java EE 6から Jakarta EE で利用できる
Java RESTful Web Service
JAX-RS 2.0 (Java EE 7)
Jakarta RESTful Web Services
Jakarta RESTful Web Services 4.0
JSONではJAX-WS、旧JAX-RPCもあり?
JSON-RPCもある?
Apache Tomcat でもライブラリで拡張可能
実装?
metro
Apache axis2
Jersey (Glassfish)
Apache CXF (Tomcat option)
https://tomcat.apache.org/tomcat-9.0-doc/cdi.html
サーバ
アノテーションを使ってServletを拡張するだけ
javax.ws.rs
クライアント JAX-RS 2.0(Java EE 7)以降
code:WS.java
javax.ws.rs.client.ClientBuilder (Java EE)
jakarta.ws.rs.client.ClientBuilder (Jakarta EE)
String jaxwsget(URI uri) {
Client client = ClientBuilder.newClient();
Invocation.Builder builder = client.target("https://api.example.com/api" ).request("application/json");
if (accessToken != null) {
builder = builder.header("Authorization", "Bearer " + accessToken);
}
String result = builder.get(String.class);
return result;
}
Java EE 7
ClientBuilder
Client
Client, WebTarget, Invocation.Builder, Response