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

JAX-RS

JavaのJAX-RSのメモ。


概要

JAX-RS(Java API for RESTful Web Services)は、JavaでRESTfulなウェブサービスを開発するための仕様。Jakarta EEの一部。
要するにREST APIを受け付けるウェブアプリケーションを作成するためのライブラリー。

JAX-RSに基づくウェブアプリケーションを作成し、アプリケーションサーバー(GlassFishWildFly等)にデプロイして実行する。

なお、REST APIを呼び出すクライアントもJAX-RSに含まれるが、単独で(APサーバーにデプロイせずに)実行するにはJAX-RSクライアントの実装(JerseyRESTEasy等)が必要となる。
(APサーバーが使っているクライアントライブラリーがあるので、利用するAPサーバーと同じものを使うのが無難そう)


build.gradle(Gradle 8.3):

plugins {
    id 'java'
    id 'war'
}

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

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

repositories {
    mavenCentral()
}

test {
    useJUnitPlatform()
}

war {
    archiveFileName = 'example.war'
}

dependencies {
    compileOnly 'jakarta.ws.rs:jakarta.ws.rs-api:3.1.0'
    compileOnly 'jakarta.enterprise:jakarta.enterprise.cdi-api:4.0.1' // @ApplicationScoped
}

warファイルを作成する方法

「gradlew war」でwarファイルを作成し、それをAPサーバーにデプロイする。(デプロイ方法はAPサーバーによって異なる)

$ ./gradlew war
$ ls build/libs/
example.war

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