Sun GlassFish Enterprise Server v3 管理ガイド

JSON リソースの表現

リソースの JSON 表現の一般的な形式は次のとおりです。

{
    "resource":{attributes},

    "Methods": {
        method-list
    }

    "Child Resources":[urls]
} 

この形式の置き換え可能な項目は次のとおりです。

resource

リソース名。

attributes

コンマ (,) で区切られたゼロ以上の名前と値のペア。名前と値の各ペアは、"名前": として指定します。

method-list

リソースがサポートするメソッドを表現する、コンマ (,) で区切られた 1 つ以上のメタデータのセット。 各メタデータセットの形式については、「メソッドリストのメソッドの JSON 表現」を参照してください。

urls

コンマ (,) で区切られたゼロ以上の子リソースの URL。

メソッドリストのメソッドの JSON 表現

メソッドリストのメソッドの JSON 表現は、次のとおりです。

Method":{
    "Name":"method-name",

    "Message Parameters":{
        message-parameter-list
    }

    "Query Parameters":{
        queryparameter- list
    }
}

この形式の置き換え可能な項目は次のとおりです。

method-name

GETPOSTDELETE のいずれかのメソッド名。

message-parameter-list

メソッドで使用できるメッセージパラメータを表す、コンマ (,) で区切られたゼロ以上のメタデータのセット。各メタデータセットの形式については、「メッセージパラメータまたはクエリーパラメータの JSON 表現」.を参照してください。

query-parameter-list

メソッドで使用できるクエリーパラメータを表す、コンマ (,) で区切られたゼロ以上のメタデータのセット。各メタデータセットの形式については、「メッセージパラメータまたはクエリーパラメータの JSON 表現」.を参照してください。

メッセージパラメータまたはクエリーパラメータの JSON 表現

メッセージパラメータまたはクエリーパラメータの JSON 表現は、次のとおりです。

"parameter-name":{attribute-list}

この形式の置き換え可能な項目は次のとおりです。

parameter-name

パラメータ名。

attribute-list

コンマで区切られた、パラメータの属性の名前と値のペアのリスト。各ペアの形式は次のとおりです。

"name":"value"

使用できる属性は次のとおりです。

Default Value

パラメータのデフォルト値。

Acceptable Values

パラメータに使用できる値のセットまたは範囲。

Type

パラメータのデータ型。次のいずれかです。

  • boolean

  • int

  • string

Optional

パラメータが省略可能かどうか。true の場合、パラメータは省略可能です。false の場合、パラメータは必須です。

Key

パラメータがキーかどうか。true の場合、パラメータはキーです。false の場合、パラメータはキーではありません。

JSON リソースの表現例

この例は、ドメイン管理用リソースの JSON 表現を示します。この例では、DAS がローカルホストで稼働中で、管理用の HTTP ポートは 4848 です。この例のリソースの URL は、http://localhost:4848/management/domain です。

改行は読みやすくするためです。


{

  "Domain":{"log-root":"${com.sun.aas.instanceRoot}/logs", 
       "application-root":"${com.sun.aas.instanceRoot}/applications", 
       "locale":"", "version":"73"},

  "Methods":{
    "Method":{
      "Name":"POST",
      "Message Parameters":{
        "log-root":{"Key":"false", "Type":"string", "Optional":"true"},
        "application-root":{"Key":"false", "Type":"string", "Optional":"true"},
        "locale":{"Key":"false", "Type":"string", "Optional":"true"},
        "version":{"Key":"false", "Type":"string", "Optional":"true"}
      }
    },
    "Method":{
      "Name":"GET"
    }
  },

  "Child Resources":[
    "http://localhost:4848/management/domain/configs",
    "http://localhost:4848/management/domain/resources",
    "http://localhost:4848/management/domain/servers",
    "http://localhost:4848/management/domain/property",
    "http://localhost:4848/management/domain/applications",
    "http://localhost:4848/management/domain/system-applications",
    "http://localhost:4848/management/domain/stop",
    "http://localhost:4848/management/domain/restart",
    "http://localhost:4848/management/domain/uptime",
    "http://localhost:4848/management/domain/version",
    "http://localhost:4848/management/domain/rotate-log",
    "http://localhost:4848/management/domain/host-port"
  ]

}