Wednesday 31 August 2011

Webcenter: zaměřeno na Resource Catalog


Resource Catalog (katalog zdrojů) nabízí konsolidovaný pohled na jinak odlišné zdroje informací (databáze, web services, MDS repository).

Jak je vidět z obrázku, je možné jej užívat jak prostřednictvím aplikací, tak z prostředí vývojového IDE JDeveloper (při tvorbě WebCenter aplikací).

Při užití v JDev je pak možné katalog užít dvěma způsoby:
  • při návrhu aplikací
  • za běhu aplikací (tento způsob je shodný s užitím z aplikací - Oracle Composer, viz starší článek na toto téma)
Při návrhu se zdroje z katalogu objevují v paletě nástrojů (podobně jako jiné zdroje z palet frameworku ADF). Při využití za běhu je třeba mít na paměti, že se změny ukládají do MDS repository, která není součástí vyvíjené aplikace - při vývoji WebCenter aplikací se proto doporučuje mít zapnutu volbu, aby se při spuštění aplikace vždy MDS vyprázdnila, aby pak po přesunutí na jiný server nedošlo ke, zdánlivě neočekávané, ztrátě nastavení.

Od verze PS 3 je možné vytvářet i uživatelské katalogy a migrovat katalogy z jednoho serveru na druhý. Uživatelský katalog může pro danou aplikaci či space předefinovat, které zdroje se budou uživatelům nabízet.

Wednesday 24 August 2011

Práce s číselníky, definice vazeb mezi metadaty

Pokud chceme v UCM (WebCenter Content) pracovat s číselníky, tj. omezenými seznamy, ze kterých se vybírá hodnota příslušného metadatového pole, máme několik možností.

Option List
Je-li hodnot jen několik a jsou-li v podstatě neměnné povahy, je možné využít tzv. Option Lists. Jak napovídá název, jedná se o objekt, který v sobě má na jednotlivých řádcích uvedeny hodnoty. Option List je možné vytvořit v Configuration Manageru.

Tree
Speciálním případem Option Listu je tzv. tree, strom, který umožní hodnoty v seznamu seřadit hierarchicky. Na dané úrovni jsou vždy vidět jen předci, přímí sourozenci a přímí potomci daného uzlu (seznam může být přehlednější).

Custom Tables, Views
V případě, že je třeba hodnoty v čase periodicky aktualizovat, je lepší použít tabulky a pohledy (views). Pokud se v Configuration Manageru vytvoří tabulka, znamená to fakticky, že se vytvoří nová tabulka v datovém modelu aplikace a přidá se její záznam mezi tabulky, které je možné v rámci definice metadat využívat.
Pohled umožňuje z tabulky vybrat některá data (sloupce i řádky). Na rozdíl od zvyklostí z databáze, obsahuje pohled, nikoliv tabulka, volbu Edit Values (Změň hodnoty), která umožní měnit hodnoty v tabulce uložené. Dalším důležitým polem je Visible Column, kterým umožní z pohledu vybrat jeden sloupec, jehož hodnoty je pak možné asociovat s vybraným metadatovým polem.

Představme si následující příklad:

Vytvoříme tedy 2 tabulky (Dodavatel, Dodavatel_detail) s příslušnými sloupci. Dále vytvoříme 3 pohledy (jeden nad tabulkou Dodavatel s viditelným sloupcem supplier_name a dva nad tabulkou Dodavatel_detail se sloupci country resp. city).

Pokud jsme tak ještě neučinili, vytvoříme příslušná metadatová pole. Dále pak můžeme asociovat pole s příslušným pohledem (v rámci Add/Edit Metadata Field vybereme Enable Option List a v rámci dalšího dialogu pak příslušný view).

Pokud bychom ponechali konfiguraci v tomto stavu, zobrazovaly by se pro country a city všechny 4 hodnoty z tabulky Dodavatel_detail.

Žádoucí je však, aby se nejprve vybral dodavatel (dle jména) a v detailních hodnotách se pak vybíralo jen mezi hodnotami příslušným tomuto dodavateli.

Relationship
Aby toto bylo možné, je třeba nejprve vytvořit další objekt, tzv. relationship (vztah). V řeči databáze se jedná o odkaz pomocí cizího klíče - opět v Configuration Manageru vytvoříme vztah mezi našimi dvěma tabulkami a sloupcem supplier_id jako cizím klíčem.

Relationship je pak třeba ještě použít v definici závislých metadatových položek (zaškrtne se Dependent Field a pak vybere Depends on Field - supplier_name při využití právě vytvořeného relationship)

Dvě upozornění:
  • pokud smažete tabulku vytvořenou v Configuration Manageru, zmizí ze seznamu, ale nebude odstraněna z databáze (musí se smazat administrátorskými prostředky databáze)
  • pokud v rámci definice tabulky nevyberete primární klíč, bude se automaticky brát jako primární klíč první sloupec

Wednesday 10 August 2011

Webcenter: zaměřeno na Business Mashup

Jakkoli využití termínu mashup není úplně nepřesné, mnohem trefnější nazvání pro to, co business mashupy dělají, by bylo implementace patternu Model-View-Controller, přičemž hlavním přínosem části dodané Web Centerem oproti témuž v "prostém" ADF je možnost změn v runtime režimu.

Vrstvu Model bude měnit administrátor. Zde se nejčastěji využívá SQL pro získání dat z databáze (Pozor! Webcenter využívá databázová spojení definovaná na úrovni Weblogic Serveru - pro jejich vytvoření je tedy třeba spolupracovat i s administrátorem WLS), nebo web services.

Vrstvu View mění uživatel, popř. power-user pro celou skupinu. Jejím úkolem, jak napovídá anglický termín, je zobrazit data v požadované formě uživateli. Uživatel si může vybrat z řady vizuálních komponent (jedná se o ADF Visualization Components), které jsou standardně dodávány - typicky, tabulkové přehledy, grafy apod, popř. z custom komponent vytvořených vývojáři na míru.

Business Mashups jsou mashupy v tom smyslu, že na jedné stránce umožní zobrazit data z více zdrojů. Každý z nich však pracuje s jedním zdrojem.