ページを作成します

投稿

/v1/portal/pages

ページを作成して、新しく作成されたページに関する情報を返します。ノート: 新しいページを作成した後、このページをchildNodeとしてNavigationNodeに挿入する必要があります。この場合、ポータルにはそのページのみが表示されます。

そのためには、次のステップに従ってください。

  • ポータルを問い合せて、navigationnodes IDを取得します。REST APIを使用して、短縮IDに基づいてポータル詳細を取得します。取得したレスポンスでnavigationnodes URLを検索します。URLは、http://host:port/rest/api/v1/portal/navigationnodes/AjY?utoken="のようになります。AjyはnavigationNodeIdです。このIDを書き留めます。
  • 次に、「ナビゲーション・ノードへの子ノードの追加」のREST APIを使用して、navigationNodeをchildNodeとして挿入します。ここでのIDは、前のステップで書き留めたnavigationNodeIdです。

リクエスト

サポートされているメディア・タイプ
本文()
作成されるページの必須属性のコンテンツ
ルート・スキーマ: page
型: object
ソースを表示
ネストされたスキーマ: linkStates
タイプ: array
ソースを表示
ネストされたスキーマ: Locale
型: object
ソースを表示
ネストされたスキーマ: Linked
型: object
ソースを表示
ネストされたスキーマ: LinkElementState
型: object
ソースを表示
ネストされたスキーマ: pathLinkValues
タイプ: array
ソースを表示
ネストされたスキーマ: pathLinkWildcards
タイプ: array
ソースを表示
ネストされたスキーマ: reflect.Method
型: object
ソースを表示
ネストされたスキーマ: annotatedExceptionTypes
タイプ: array
ソースを表示
ネストされたスキーマ: annotatedParameterTypes
タイプ: array
ソースを表示
ネストされたスキーマ: reflect.AnnotatedType
型: object
ソースを表示
ネストされたスキーマ: genericExceptionTypes
タイプ: array
ソースを表示
ネストされたスキーマ: genericParameterTypes
タイプ: array
ソースを表示
ネストされたスキーマ: reflect.Type
型: object
ソースを表示
ネストされたスキーマ: parameters
タイプ: array
ソースを表示
ネストされたスキーマ: typeParameters
タイプ: array
ソースを表示
ネストされたスキーマ: reflect.Parameter
型: object
ソースを表示
ネストされたスキーマ: reflect.Executable
型: object
ソースを表示
ネストされたスキーマ: annotatedExceptionTypes
タイプ: array
ソースを表示
ネストされたスキーマ: annotatedParameterTypes
タイプ: array
ソースを表示
ネストされたスキーマ: genericExceptionTypes
タイプ: array
ソースを表示
ネストされたスキーマ: genericParameterTypes
タイプ: array
ソースを表示
ネストされたスキーマ: parameters
タイプ: array
ソースを表示
ネストされたスキーマ: typeParameters
タイプ: array
ソースを表示
ネストされたスキーマ: reflect.TypeVariable
型: object
ソースを表示
ネストされたスキーマ: annotatedBounds
タイプ: array
ソースを表示
ネストされたスキーマ: bounds
タイプ: array
ソースを表示
ネストされたスキーマ: unicodeLocaleAttributes
タイプ: array
ソースを表示
ネストされたスキーマ: unicodeLocaleKeys
タイプ: array
ソースを表示
ネストされたスキーマ: linkStates
タイプ: array
ソースを表示
先頭に戻る

レスポンス

サポートされているメディア・タイプ

400レスポンス

Bad request: リクエスト内の不正な形式のコンテンツ

403レスポンス

無効なutokenが指定されました
先頭に戻る

REST APIを使用してポータルを作成できます。これは3ステップのプロセスです。最初にページを作成してから、ポータルのナビゲーション・ノードIDを取得し、そのページをchildNodeとしてこのナビゲーション・ノードに追加する必要があります。

最初のステップ: ポータル・ページを作成するには、RESTリソースに対するPOSTリクエストを発行し、次の必須パラメータをリクエスト本文に指定する必要があります:

次の書式を使用し、cURLを使用してPOSTリクエストを発行します。

curl -i -X POST -H 'Content-Type: application/json' -d @create-page.json http://host:port/rest/api/v1/portal/portals/{shortId}/pages?utoken=
  • create-page.jsonは、リクエストのリクエスト本文を含むJSONファイルです。

  • hostname:portは、Oracle WebCenter Portalを実行中のホストとIPポートの名前です。例: example.com:8888

  • utoken: ポータルのAPIにアクセスするためのAPIトークンです。例: utoken=utoken=abcdIC05zgjZoqCF8ShWL42AhTVvq-fc8uFshnw%2A%2A。詳細は、「認証」を参照してください。

リクエスト本文の例

次は、リクエストの本文を含むcreate-page.jsonファイルのサンプルで、空白のpageStyleを使用してページを作成する方法を示しています:

{
               "name": "RestPage",
               "reference": {
               "name": "Blank",
               "namespace": "pageStyle"
  },
               "description": "A Simple Json Page"
      },

HTTPステータス・コード

HTTP_STATUS = 201 Created

レスポンス本文の例

{
	    "resourceType": "urn:oracle:webcenter:portal:page",
    "pageStyleBean": {
        "links": [
            {
                "href": "http://hostname:port/rest/api/v1/portal/pages/Eeg/pageStyle?utoken=IPrUJFYBs44bC7kRXuWBmcVx_g21KtAEu7Hmkun0sA9O_w%2A%2A",
                "rel": "alternate",
                "resourceType": "urn:oracle:webcenter:portal:pagestyle",
                "capabilities": "urn:oracle:webcenter:read urn:oracle:webcenter:delete"
            },
            {
                "href": "http://hostname:port/rest/api/v1/portal/pagestyles/FQ?utoken=IPrUJFYBs44bC7kRXuWBmcVx_g21KtAEu7Hmkun0sA9O_w%2A%2A",
                "rel": "self",
                "resourceType": "urn:oracle:webcenter:portal:pagestyle",
                "capabilities": "urn:oracle:webcenter:read urn:oracle:webcenter:delete urn:oracle:webcenter:update"
            }
        ],
        "resourceType": "urn:oracle:webcenter:portal:pagestyle",
        "portalName": "DefaultGroupSpace",
        "namespace": "pageStyle",
        "name": "Blank"
    },
    "overridePolicy": false,
    "publishedVersion": 0,
    "permissionClass": "oracle.webcenter.security.auth.NavigationResourcePermission",
    "locked": false,
    "pageStyle": "/oracle/webcenter/siteresources/scopedMD/s8bba98ff_4cbb_40b8_beee_296c916a23ed/pageStyle/gsr1b60e8a7_2e23_48ff_9571_31ede592de01/TemplateBlank.jspx",
    "fileName": "Page721a8c93_76a8_4f83_951d_7692acabfc8c.jspx",
    "pageDefinitionPath": "/pageDefs/oracle/webcenter/page/scopedMD/sda24fbda_d8cf_4013_b696_df9cce7589aa/Page721a8c93_76a8_4f83_951d_7692acabfc8cPageDef.xml",
    "pageViewType": "JSPX",
    "sourcePath": "/oracle/webcenter/siteresources/scopedMD/s8bba98ff_4cbb_40b8_beee_296c916a23ed/pageStyle/gsr1b60e8a7_2e23_48ff_9571_31ede592de01/TemplateBlank.jspx",
    "pagePath": "/oracle/webcenter/page/scopedMD/sda24fbda_d8cf_4013_b696_df9cce7589aa/Page721a8c93_76a8_4f83_951d_7692acabfc8c.jspx",
    "description": "Vertically stacked content in a single column",
    "creator": "weblogic",
    "modifier": "weblogic",
    "securityId": "serviceID=oracle.webcenter.page,scopeID=sda24fbda_d8cf_4013_b696_df9cce7589aa,resourceID=sda24fbda_d8cf_4013_b696_df9cce7589aa",
    "shortId": "Eeg",
    "modified": "2021-01-11T10:53:20.427Z",
    "created": "2021-01-11T10:53:20.182Z",
    "namespace": "pageStyle",
    "currentVersionId": "4ddf1a55-a08c-4857-933f-a9970e4af71f",
    "locale": "en_US",
    "id": "721a8c93-76a8-4f83-951d-7692acabfc8c",
    "name": "RestPage"
	  }

2番目のステップ: ポータルのナビゲーション・ノードIDを取得するには、cURLコマンドを実行してポータルの詳細を取得します。レスポンスで、navigationRootNodeを検索します。navigationnodesのIDを取得します。IDはURL内にあります。次に示すレスポンスでは、NavigationNodeのshortIdはAjYです。

次の書式を使用し、cURLを使用してGETリクエストを発行します。

curl -i -X GET  http://host:port/rest/api/v1/portal/portals/{shortId}?utoken= -H 'Content-Type: application/json'
レスポンス本文の例
{
	 "navigationRootNode": {
        "links": [
            {
                "href": "http://host:port/rest/api/v1/portal/portals/AjQ/navigationRootNode?utoken=",
                "rel": "alternate",
                "resourceType": "urn:oracle:webcenter:portal:navigationnode",
                "capabilities": "urn:oracle:webcenter:read urn:oracle:webcenter:delete"
            },
            {
                "href": "http://host:port/rest/api/v1/portal/navigationnodes/AjY?utoken=",
                "rel": "self",
                "resourceType": "urn:oracle:webcenter:portal:navigationnode",
                "capabilities": "urn:oracle:webcenter:read urn:oracle:webcenter:delete urn:oracle:webcenter:update"
            }
        ],
        "resourceType": "urn:oracle:webcenter:portal:navigationnode",
        "portalName": "RestPortal1",
        "namespace": "",
        "name": "root"
    }
	  }

3番目のステップ: 新しく作成したページをナビゲーション・ノードに追加します。cURLコマンドのinsertNavigationNode.jsonは、リクエストのリクエスト本文を含むJSONファイルです。hostname:portは、Oracle WebCenter Portalが実行されているホストの名前およびIPポートです。たとえば、example.com:8888です。utokenは、ポータルAPIにアクセスするためのAPIトークンです。例: utoken=utoken=abcdIC05zgjZoqCF8ShWL42AhTVvq-fc8uFshnw%2A%2A

次の書式を使用し、cURLを使用してPOSTリクエストを発行します。

curl -i -X POST -H 'Content-Type: application/json'-d @insertNavigationNode.json http://host:portal/rest/api/v1/portal/navigationnodes/{navigation-node-shortId}/childNodes?utoken=
リクエスト本文の例
{
              "name": "RestPage",
              "namespace": "pageStyle",
              "portalName": "RestPortal"
      },
レスポンス本文の例
{
     "resourceType": "urn:oracle:webcenter:portal:page",
    "pageStyle": "/oracle/webcenter/siteresources/scopedMD/s8bba98ff_4cbb_40b8_beee_296c916a23ed/pageStyle/gsr1b60e8a7_2e23_48ff_9571_31ede592de01/TemplateBlank.jspx",
    "overridePolicy": false,
    "permissionClass": "oracle.webcenter.security.auth.NavigationResourcePermission",
    "locked": false,
    "fileName": "Page662d449a_b506_42a5_83a9_ef59eb87d27b.jspx",
    "publishedVersion": 0,
    "pageStyleBean": {
        "links": [
            {
                "href": "http://slc14url.us.oracle.com:8888/rest/api/v1/portal/pages/Eeg/pageStyle?utoken=IEM4UE4n8YG6ZA8fay8b18oTSMmgI8qC7cKAy6vzPqfz_w%2A%2A",
                "rel": "alternate",
                "resourceType": "urn:oracle:webcenter:portal:pagestyle",
                "capabilities": "urn:oracle:webcenter:read urn:oracle:webcenter:delete"
            },
            {
                "href": "http://slc14url.us.oracle.com:8888/rest/api/v1/portal/pagestyles/FQ?utoken=IEM4UE4n8YG6ZA8fay8b18oTSMmgI8qC7cKAy6vzPqfz_w%2A%2A",
                "rel": "self",
                "resourceType": "urn:oracle:webcenter:portal:pagestyle",
                "capabilities": "urn:oracle:webcenter:read urn:oracle:webcenter:delete urn:oracle:webcenter:update"
            }
        ],
        "resourceType": "urn:oracle:webcenter:portal:pagestyle",
        "namespace": "pageStyle",
        "portalName": "DefaultGroupSpace",
        "name": "Blank"
    },
    "pageDefinitionPath": "/pageDefs/oracle/webcenter/page/scopedMD/s7edf2c3d_f10c_4db4_a961_297ca6c2f806/Page662d449a_b506_42a5_83a9_ef59eb87d27bPageDef.xml",
    "sourcePath": "/oracle/webcenter/siteresources/scopedMD/s8bba98ff_4cbb_40b8_beee_296c916a23ed/pageStyle/gsr1b60e8a7_2e23_48ff_9571_31ede592de01/TemplateBlank.jspx",
    "pagePath": "/oracle/webcenter/page/scopedMD/s7edf2c3d_f10c_4db4_a961_297ca6c2f806/Page662d449a_b506_42a5_83a9_ef59eb87d27b.jspx",
    "pageViewType": "JSPX",
    "description": "Vertically stacked content in a single column",
    "created": "2021-01-13T08:29:18.195Z",
    "namespace": "pageStyle",
    "modifier": "weblogic",
    "creator": "weblogic",
    "currentVersionId": "67b0193d-5d2b-45d3-aedb-658330a17775",
    "modified": "2021-01-13T08:29:18.295Z",
    "securityId": "serviceID=oracle.webcenter.page,scopeID=s7edf2c3d_f10c_4db4_a961_297ca6c2f806,resourceID=s7edf2c3d_f10c_4db4_a961_297ca6c2f806",
    "name": "RestPage4",
    "id": "662d449a-b506-42a5-83a9-ef59eb87d27b",
    "locale": "en_US",
    "shortId": "Eeg"
	  }    }
  ]
}
先頭に戻る