Alfresco WCMGewijzigd
| Versie | 3.2r2 |
| Officiële website | http://www.alfresco.com/products/wcm/ |
| Licentiemodel | LGPL v3 |
| Behoort tot de domeinen | Web Content Management
|
| Getest in | april 2010 |
Aanbevelingen
Op vele vlakken is Alfresco een Enterprise Content Management (ECM) systeem dat is gestart vanuit een documentair standpunt en waaraan WCM-functionaliteit werd toegevoegd. Uiteraard kan men steunen op de beschikbare repository en zijn diensten zoals versioning, check-in/out en worklfow. Voor het beheer van een website komt echter heel wat meer kijken, waar Alfresco enkel het content-productiegedeelte voor zijn rekening neemt.
In de geteste versie (3.2) is het zeer duidelijk dat WCM nog niet matuur genoeg is. De documentatie rond WCM is nog sterk verspreid en er zijn sedert de 3.2 release continue architectuurverandering geweest. Daardoor is het vaak niet duidelijk of deze van toepassing is op de huidige versie. Daarbij komt nog dat de Wiki vol acroniemen staat en het als snel een kluwen vormt dat moeilijk te ontwarren is. Er is immers geen A-Z beschrijving van hoe men nu precies een website moet bouwen met Alfresco.
Momenteel is de opzet van een website met behulp van Alfresco een combinatie van de creatie van de juiste formulieren en transformatietemplates. Voor de bouw van de navigatiestructuur en organisatie van de site is de keuze volledig vrij door bijvoorbeeld te steunen op metadata die auteurs ingeven. Dit bevestigt de stelling dat in zijn huidige staat WCM vooral gericht is op het produceren van web-content en niet de bouw van de website zelf. Gezien die vrijheid is het dan ook moeilijk te bepalen wat nu precies de beste manier is om een site te bouwen (volledig statisch <-> dynamisch).
Er is momenteel geen module om gebroken links te detecteren. In een oudere versie was dit aanwezig maar dit is nu standaard uitgeschakeld, dit om problemen met deze module. Bij de bouw van de website moet dus rekening gehouden worden met mogelijke inconsistenties in de links in pagina’s.
Gezien de staat van de documentatie is de bouw van een website geen evidente taak zonder enige ondersteuning van een ervaren Alfresco partner.
Gebruikers die momenteel gewend zijn om in Alfresco te werken zouden in staat moeten zijn om gebruik te maken van de web formulieren maar het lijkt niet evident. Alle aangemaakte inhoud is op het eerste zicht in een vlakke structuur aanwezig en niet georganiseerd in folders, wat moeilijk kan zijn indien er heel wat inhoud wordt aangemaakt. Als je effectief in de site gaat browsen dan kan je wel op bepaalde locaties web content aanmaken. Let wel dat bepaalde parameters van de web form er kunnen voor zorgen dat nieuwe web-inhoud op een vastgelegde plaats worden aangemaakt. Voor auteurs kan het ook verwarrend zijn om de verschillende rendities (XML, HTML) van een document naast elkaar te zien staan.
Alfresco WCM is nog volop in uitbouw. Alfresco is reeds een aantal maal van strategie veranderd en lijkt nu de keuze gemaakt te hebben voor de technologieën die deel zullen uitmaken van WCM, met name Spring Surf. Versie 3.4 is intussen gereleased met gebruik van de vermelde technologie. Onderstaande tekst heeft enkel betrekking op de geteste versie 3.2.
Beschrijving
Versie 3.2 van WCM is vooral gericht op het produceren van pagina’s en niet zozeer de weergave ervan in een site op een degelijke wijze organiseren. Alle onderliggende content management functionaliteit van Alfresco is beschikbaar zoals versionering, check-in/out en workflow.
In de Alfresco interface staan de websites in het gedeelte “Web Projects”. Een gebruiker ziet zijn documenten in een ‘sandbox’ die een view geeft op de website. Elke gebruiker heeft zijn eigen sandbox en er is een algemene Staging sandbox waar alle wijzigingen via de workflow terechtkomen. Men spreekt hier van virtuele views op de site. Door middel van de ‘virtual server’ kan je de site previewen, typisch op een adres van de vorm http://alfrescosample.www--sandbox.10-6-101-43.ip.alfrescodemo.net:8180/.
![]() |
| Klik om te vergroten |
Naast de vlakke lijst met aangemaakte items kan er ook door de websitestructuur gebrowsed worden, folders in de site aangemaakt worden, content opladen en web-inhoud (gebaseerd op een formulier).

Er worden volledige snapshots gemaakt van de site die naar believen kunnen teruggerold worden.
Naast de web-toegang via de Alfresco web client is het ook mogelijk de site te benaderen via CIFS. Dit biedt het voordeel aan designers & developers om aan een deel van de site te werken met de tools die ze gewoon zijn (Dreamweaver, Eclipse, …).
Er zijn 2 dashlets (My Web Forms, My Web Files) beschikbaar die op de homepagina van de gebruiker onmiddellijk toegang geven tot de forms en de gewijzigde bestanden.
Content editing & renditions
Alle inhoud wordt gecreëerd in de standaard Alfresco-interface. Er is een Web Form dat is gebaseerd op een XML-schema. Dit schema wordt met behulp van Xforms gerenderd naar een invoerformulier. De ingegeven tekst wordt dan opgeslagen als XML waarna hierop transformaties kunnen toegepast worden. In het XML Schema kunnen annotaties toegevoegd worden die het uitzicht en gedrag van de XForm beïnvloeden zoals het aantal knoppen in de rijke tekst editor. Het schema kan ook referenties bevatten naar externe logica (web scripts) om bepaalde velden dynamisch op te vullen. Het is ook mogelijk om met herhalingsblokken te werken (repeaters). Daarnaast kunnen nog eigen widgets geschreven worden gebaseerd op het javascript-framework Dojo.
Een voorbeeld van een web form met een repeating body en bijvoorbeeld de creatie van een link naar bestaande inhoud in de website:
![]() |
| Klik om te vergroten |
De gecreëerde XML documenten worden dan getransformeerd naar web inhoud (HTML, JSP, PDF, …). Standaard zijn dit XSL, Freemarker en XSL-FO transformaties.
Er is een volledige vrijheid voor het output-formaat. Dat betekent dat er in de realisatie & deployment van de website verschillende opties zijn:
- Statisch: alle pagina’s worden gerenderd en op een server geplaatst. Het is dan de web (applicatie) server die de pagina’s weergeeft.
- Dynamisch: de doelserver bevat een Alfresco runtime die toelaat om de repository aan te roepen voor bijvoorbeeld zoekfuncties, bouw van de navigatie, … Dit kan met behulp van Webscripts (URL-addresseerbare operaties op Alfresco). Deze webscripts kunnen aangeroepen worden door eender welke technologie (JSP, PHP, ASP, .NET, …).
Naast de XML-gebaseerde inhoud is het ook mogelijk om pure documenten te publiceren al dan niet na een transformatie, bijvoorbeeld .DOC naar .PDF.
WCM strategie
Alfresco is de laatste 2 jaar een aantal keer van strategie veranderd voor het WCM gedeelte. Dat uit zich dan ook in de wirwar van documentatie over WCM die dan slaat op een bepaalde versie van het product.
De producten die eigenlijk niet meer geldig zijn:
- Web Site Framework (WSF) : is een Alfresco forge project dat niet meer actueel is. Had tot doel een standaard framework te zijn om websites te bouwen met Alfresco.
- Alfresco SURF : een web application platform dat verder bouwt op Web Scripts. Dit vormt de basis voor Web Studio.
- Web Studio : steunt op Alfresco Surf. Was de bedoeling om een drag&drop, WYSIWYG interface te zijn voor de bouw van een web site. Zit momenteel in de Labs versie maar kampt met installatie problemen.
De visie (en producten) voor de komende releases:

- Alfresco Editorial Repository : de content repository waar extra services zullen aan toegevoegd worden zoals een content rendering API (transformatieservice voor content)
- Alfresco Spring Surf : het Surf platform werd geïntegreerd met het Spring framework en overgedragen aan de Spring-community. Spring Surf wordt de basis van een aantal nieuwe WCM produkten.
- Alfresco Web Editor (AWE): een evolutie van Web Studio die onder andere zal toelaten om ‘in context editing’ uit te voeren en een toolbar toe te voegen aan de website.
- Alfresco Web Producer: basistool voor websitebeheer met o.a. definitie van navigatiestructuur, beheer van templates en metadata, …
- Web Delivery Runtime: content repository die via standaardinterfaces (CMIS, REST, SQL-achtige queries) kan worden aangesproken voor dynamische websites. Dit is een standaard Alfresco repository en is al aanwezig in de huidige release.
- Deployment: vernieuwd deployment mechanisme naar zowel de Web Delivery Runtime als naar folders op een server als een databank.


