Om utvikling av komponenter

Når du utvikler din egen tilpassede komponent, kan du utvikle sammensatte elementer som kan bygges inn i områdesiden, og du kan bruke den sideteknologien du ønsker. Du kan dermed effektivt utvide listen over komponenter som er tilgjengelige i Oracle Content Management.

Oppføringer for alle registrerte komponenter lagres i komponentkatalogen, som er en mappe i Oracle Content Management som inneholder alle oppføringene for alle registrerte komponenter.

Ikke bruk følgende navn for maler, temaer, komponenter, områder eller områdesider: authsite, content, pages, scstemplate_*, _comps, _components, _compsdelivery, _idcservice , _sitescloud, _sitesclouddelivery, _themes, _themesdelivery. Selv om du kan bruke de følgende navnene for områdesider, kan du ikke bruke dem for maler, temaer, komponenter eller områder: documents, sites.

Komponenttyper

Komponentkatalogen støtter disse komponenttypene:

  • Lokal komponent

  • Lokal komponent gjengitt i en linjebundet ramme

  • Ekstern komponent

Typen komponent lagres som et filtypeattributt, "xScsAppType", for komponentmappen. Gyldige verdier følger.

Type Beskrivelse

Lokal komponent

Alle avhengigheter forventes å være lokale.

Lokal komponent gjengitt i en linjebundet ramme

Komponenten betjenes fra det samme domenet som Oracle Content Management.

Ekstern komponent

Komponenten betjenes fra en ekstern plassering.

Komponentfilstruktur

Hver komponenttype har et eget sett med filer når de opprettes i komponentkatalogen, basert på hvordan de implementeres.

Lokal komponent:

/Components/component-name
    appinfo.json
    _folder_icon.jpg
    assets
        settings.html
        render.js

Lokal komponent som bruker linjebundet ramme:

/Components/component-name
    appinfo.json
    _folder_icon.jpg
    assets
        settings.html
        render.js
        js
            sites.min.js
            knockout.min.js
            jquery.min.js

Ekstern komponent:

/Components/component-name
    appinfo.json
    _folder_icon.jpg
    keys.json

Mappemetadata

Komponentregistreringsdataene lagres i mappemetadataene. Følgende egenskaper brukes til å identifisere komponenten og typen unikt.

Egenskap Beskrivelse

app name

Navnet på mappen, som angir navnet på komponenten.

app description

Beskrivelse av mappen.

app guid

Hver komponent knyttes til en GUID og lagres som filtypeattributtet xScsItemGUID. GUID-en genereres av tjeneren når komponenten opprettes.

app type

Egenskap som angir komponenttypen. Den lagres som filtypeattributtet xScsApType.

Merknad:

Egenskapen iconUrl, som lagres som filtypeattributtet xScsAppIconUrl, er frarådet.

Filen appinfo.json

Registreringsfilen appinfo.json for hver type komponent inneholder bare data som ikke er tilgjengelige i mappemetadataene. Komponentegenskaper som defineres i mappemetadataene, dupliseres ikke til filen appinfo.json.

Lokal komponent:

{
        "settingsData":{
                "settingsHeight":80,
                "settingsRenderOption"; "dialog",
                "settingsWidth":300,
                "componentLayouts":[],
                "triggers":[],
                "actions":[]
        },
        "initialData":{
                "customSettingsData":[],
        }
}

Lokal komponent gjengitt i en linjebundet ramme:

{
        "endpoints": {
              "settings": {
                      "height": "300",
                      "width": "400"
              }
        }
        "initialData": {
                "customSettingsData": {}
        }
}

Ekstern komponent:

{
        "endpoints": {
              "widget": {
                     "url": "http://www.externaldomain.com/app/render.html"
              }
              "settings": {
                      "url": "http://www.externaldomain.com/app/settings.html",
                      "height": "300",
                      "width": "400"
              }
        }
        "initialData": {
              "customSettingsData": {}
        }
}

Det finnes ingen registrerte verdier for "url" for lokale komponenter. De bruker bestemte filer som kan redigeres for innhold, men du kan ikke endre plasseringen eller navnet.

  • Lokale komponenter bruker filene assets/render.js og assets/settings.html.

  • Lokale komponenter som gjengis i en linjebundet ramme, bruker filene assets/render.html og assets/settings.html.

  • Eksterne komponenter bruker angitte verdier for "url".