2.17. RESTEasy JavaScript API


2.17.1. RESTEasy JavaScript API について

RESTEasy は、AJAX 呼び出しを使用して Jakarta RESTful Web Services 操作を呼び出す JavaScript API を生成することができます。各 Jakarta RESTful Web Services リソースクラスは、宣言するクラスまたはインターフェイスと同じ名前を持つ JavaScript オブジェクトを生成します。JavaScript オブジェクトには、プロパティーとして各 Jakarta RESTful Web Services メソッドが含まれます。

@Path("foo")
public class Foo {

  @Path("{id}")
  @GET
  public String get(@QueryParam("order") String order, @HeaderParam("X-Foo") String header,
    @MatrixParam("colour") String colour, @CookieParam("Foo-Cookie") String cookie) {
  }

  @POST
  public void post(String text) {
  }
}

以下の JavaScript コードは、前述の例で生成された Jakarta RESTful Web Services API を使用します。

var text = Foo.get({order: 'desc', 'X-Foo': 'hello', colour: 'blue', 'Foo-Cookie': 123987235444});
Foo.post({$entity: text});

各 JavaScript API メソッドは、任意のオブジェクトを単一のパラメーターとして取得します。ここでの各プロパティーは名前で識別される Cookie、ヘッダー、パス、クエリーまたはフォームパラメーター、または API パラメータープロパティーです。API パラメータープロパティーの詳細は、RESTEasy Javascript API Parameters の付録を参照してください。

2.17.1.1. RESTEasy JavaScript API サーブレットの有効化

RESTEasy JavaScript API はデフォルトで無効にされています。以下の手順に従って、web.xml ファイルを更新して有効にします。

  1. テキストエディターでアプリケーションの web.xml ファイルを開きます。
  2. 以下の設定を web-app タグ内のファイルに追加します。

    <servlet>
        <servlet-name>RESTEasy JSAPI</servlet-name>
        <servlet-class>org.jboss.resteasy.jsapi.JSAPIServlet</servlet-class>
    </servlet>
    
    <servlet-mapping>
        <servlet-name>RESTEasy JSAPI</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

2.17.1.2. ビルド AJAX クエリー

RESTEasy JavaScript API を使用すると、手動で要求を作成することができます。以下にこの動作の例をいくつか示します。

例: RESTEasy JavaScript API クライアントの動作をオーバーライドするために使用される REST オブジェクト

// Change the base URL used by the API:
REST.apiURL = "http://api.service.com";

// log everything in a div element
REST.log = function(text) {
  jQuery("#log-div").append(text);
};

REST オブジェクトには以下の読み書きプロパティーが含まれます。

  • APIURL: デフォルトで Jakarta RESTful Web Services ルート URL に設定されます。要求の作成時にすべての JavaScript クライアント API 機能によって使用されます。
  • log: RESTEasy クライアント API ログを受信するために function(string) に設定します。これは、クライアント API のデバッグ、およびそれらを確認できる場所のログの配置を行う場合に便利です。

例: REST.Request() メソッドを使用したカスタムリクエストの構築

var r = new REST.Request();
r.setURI("http://api.service.com/orders/23/json");
r.setMethod("PUT");
r.setContentType("application/json");
r.setEntity({id: "23"});
r.addMatrixParameter("JSESSIONID", "12309812378123");
r.execute(function(status, request, entity) {
  log("Response is " + status);
});

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る