S-JIS[2024-03-10] 変更履歴

RESTEasy

RESTEasyのメモ。


概要

RESTEasy(レストイージー)は、RESTfulなウェブサービスにアクセスするクライアントを作るためのライブラリー。
WildFlyJBossのOSS版)で使われている。

biuld.gradle:

plugins {
    id 'java'
}

java {
    toolchain {
        languageVersion = JavaLanguageVersion.of(21)
    }
}

tasks.withType(JavaCompile) {
    options.encoding = 'UTF-8'
}

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.jboss.resteasy:resteasy-client:6.2.7.Final'
}

クライアントの例

import jakarta.ws.rs.client.Client;
import jakarta.ws.rs.client.ClientBuilder;
import jakarta.ws.rs.client.WebTarget;
public class RestClientMain {

    public static void main(String... args) {
        try (Client client = ClientBuilder.newClient()) {
            WebTarget target = client.target("http://localhost:8080/base/api/resource1");
//          WebTarget target = client.target("http://localhost:8080/base").path("/api").path("/resource1");
//          WebTarget target = client.target("http://localhost:8080/base").path("api").path("resource1");
            String result = target.request().get(String.class);

            System.out.println(result);
        }
    }
}

HTTPリクエストのGETの場合、request()のgetメソッドを呼ぶ。
getメソッドの引数には、取得したいデータ型(クラス)を渡す。


request.get()(引数なし)だとResponseが返る。
この場合はステータス等も取れる。

import jakarta.ws.rs.core.Response;
        Response response = target.request().get();
        System.out.println(response.getStatus());

        String result = response.readEntity(String.class);
        System.out.println(result);

WildFlyへ戻る / 技術メモへ戻る
メールの送信先:ひしだま