Corsoavanzatoalfrescoecm
Corsoavanzatoalfrescoecm
Corso avanzato
PROGRAMMA
1/2 giornata di introduzione allarchitettura di Alfresco 1/2 giornata Demo Alfresco live 1 giorno di approfondimenti alla customizzazione di Alfresco / utilizzo delle API
PROGRAMMA: architettura
1/2 giornata di introduzione allarchitettura di Alfresco
Larchitettura generale
I componenti open source utilizzati Gli standard e i protocolli utilizzati
PROGRAMMA: live
1/2 giornata Demo Alfresco live Le business rule
Lauditing
Il recupero di file Gestione sicurezza /ruoli ricerca
PROGRAMMA: customizzazioni
1 giorno di approfondimenti alla customizzazione di Alfresco / utilizzo delle API
configurazioni avanzate Image magick, come configurare e usare la full text search e indicizzazione, reportistica, cache,
trasformazioni,
tuning JVM, configurare il Versioning,
sistema di archivio,
JMX Console log file, backup e restore
Interwoven e Vignette.
I Contenuti
Alfresco Wiki Informazioni tecniche su configurazione, amministrazione e personalizzazioni http://wiki.alfresco.com/wiki/Document_Management
Alfresco Forums Post dalla Community e dallo staff di Alfresco http://forums.alfresco.com/en/ Alfresco Forge Contributi software dalla community http://forge.alfresco.com http://wiki.alfresco.com/wiki/Developer_Guide
RISORSE: libri
Alfresco Enterprise Content Management Implementation
by Munwar Shariff, Packt Publishing
FreeMarker (http://freemarker.org/) Web script framework views, custom views in the web client, web client dashlets, email templates
OpenOffice.org (http://www.openoffice.org/)
Conversion of office documents into PDF
ImageMagick (http://www.imagemagick.org)
Image file manipulation
Questo non significa che bisogna essere esperti di tutti questi prodotti per
STANDARD 1/4
I maggiori standard e protocolli supportati da Alfresco:
FTP E possibile accedere ai contenuti del repository via FTP. Secure FTP non ancora supportato.
CIFS (Common Internet File System) CIFS permette al repository di essere montato come un drive condiviso da altre macchine. A differenza di WebDAV, non c differenza tra un repository montato come uno shared drive attraverso CIFS e un file server tradizionale.
STANDARD 2/4
I maggiori standard e protocolli supportati da Alfresco:
JSR-170 JCR una Java API per il mantenimento e laccesso ai contenuti. Alfresco un
Portlet API (JSR-168) Il Web Script Framework permette di definire RESTful API verso il repository. Web Scripts possono restituire XML, HTML, JSON, e JSR-168 portlets. Nellattuale release, richiesto che il portal e Alfresco girino sulla stessa JVM.
SOAP
API Web Services usano SOAP-based web services.
STANDARD 3/4
OpenSearch (http://www.opensearch.org) Alfresco repository pu essere configurato come una sorgente dati di tipo OpenSearch che permette ad Alfresco di partecipare a ricerche federate. OpenSearch una collezione di tecnologie che permettono di pubblicare I
STANDARD 4/4
XForms, XML Schema I form web sono definiti usando XML Schema. Non tutti i widgets XForms widgets sono supportati.
XSLT, XSL:FO
I dati delle form web possono essere trasforamti usando XSL 1.0.
ECM
Alfresco un piattaforma per lEnterprise Content Management che include:
web.
un DM con funzionalit specifiche ai bisogni di lavorare con rich media, thumbnailing, transcoding, e editing.
scanners.
Architettura
Architettura - spring
Ogni parte del Repository di Alfresco un componente o un servizio.
Un component una implementazione black box che fornisce una specifica caratteristica o capacit
Architettura - spring
Usando un database si ottengono immediatamente I benefici tipice del database quali il supporto alle transazionie, scalabilit e capacit di aministrazione.
Il Contenuto immagazzinato nel file system per permettere per grandi quantit di contenuti, accesso random, streaming,
Hibernate e Lucene.
Architettura: protocolli
Un repository non viene usato se il contenuto gestito non pu essere acceduto. Alfresco supporta diversi protocolli di accesso: CIFS (Common Internet File System) WebDAV
FTP
Tutti questi protocolli espongono il paradigma delle Folders di Files. In Windows, con CIFS, possibile usare la sincronizzazone Offline e la caratteristica delle cartelle per lavorare offline. IMPORTANTE Alfresco non supporta ad oggi Offline Synchronization per MS Vista.
Architettura: protocolli
Architettura
PROGRAMMA: live
1/2 giornata Demo Alfresco live Le business rule
Lauditing
Il recupero di file Gestione sicurezza /ruoli ricerca
Best Practices
Se loggetto di un link viene rimosso, tutti I link diventano orfani. Inversamente, rimuovendo un link, non si hanno effetit sul documento target.
Click su Paste Content as Link icon nella clipboard per creare il link.
Utilit: con lutilizzo dei link (doc o space) possibile creare una struttura ad albero linkata, effettuando salti di livello, permettendo di accedere a spaces, anche se il parent non accessibile. Ai link possibile associare diritti.
Security Model
Users e Group
Permissions e Ruoli
Authentication
Security Model
Users sono membri individuali, mentre i gruppi sono categorizzazioni logiche di utenti.
Permessi definiscono i diritti di accesso agli space e al content. Un gruppo di permessi un conveniente raggruppamento di permessi, ognuno dei quali applicabile agli space, space properties, sub-space, content,
Security Model
I ruoi sono collezioni di permessi assegnati ad un utente Ogni ruolo comprende un set di permessi. Alfresco fornisce out-of-the-box supporto per i seguenti ruoli, configurabili da file: Consumer pu leggere un contenuto
Web Services
Spring beans esposti come servizi pubblici in Java
La location e il nome dello space pu essere specificato mentre si crea laccount utente. Lutente per il quale viene creato uno space diventa lowner di quello space Come owner, lutente pu avere full access al suo space
etc.
DeleteNode Delete file ExecuteContent Execute file SetOwner Set ownership on a content item
A complete list of default permissions and roles is provided in the Alfresco configuration file <config>\model\permissionDefinitions.xml.
Per fare questo si possono invitare gli utenti nel proprio space.
Per esempio, potresti invitare un utente (o gruppo) a uno dei tuoi spaces come un editor. Potresti invitare lo stesso utente (or group) a differenti spaces come un collaborator.
Lo stesso utente (o group) potrebbe essere invitato da qualcun altro come un coordinator.
Gli item cancellati (nella cartella temporanea, consumano spazio, quindi buona pratica pulire periodicamente la cartella.
Questi item non potranno pi essere recuperati. E raccomandabile un backup regolare dei propri dati.
ATTENZIONE: Sui manuali viene indicato che questa funzione presente tra le More Action.
INVECE si trova nello User Profile. Effettuare il log in come amministratore, crea un paio di files in Alfresco e cancellali. In any space, click More Actions | Manage Deleted Items. The Manage Deleted Items pane appears Nello User Profile presente una voce di management che porta alla ricerca di tutti I file cancellati con la possibilit di effettuare il restore o la cancellazione definitiva. Quando si effettua il restore si pu scegliere una cartella diversa da quella originaria, che altrimenti viene usata.
Data Dictionary,
Guest Home, Users Home The Data Dictionary space contiene tutte le definizioni gestite dallutente; Guest Home lo spazio creato per lutente creato di default Guest; E buona pratica creare un singolo space che contiene spaces per tutti gli utenti individuali. Creare uno space NomeCognome il cui padre User Homes.
Data Dictionary
Data Dictionary una shared resource. Tutti gli script e i template presenti in data dictionary possono essere definiti dallamministratore e usati dagli utenti. Email Templates: contiene I templates per la notifica via mail di un invito ad uno space, documento, o da una regola o azione. Email templates sono scritti in FreeMarker template language e hanno lestensione .ftl. Presentation Templates: templete di presentazione, usati per la visualizzazione del contenuto in deversi modi. Presentation templates sono scritti in FreeMarker template language e hanno lestensione .ftl. RSS Templates: usati per fornire RSS feeds degli space. Saved Searches: pre-built queries, salvate da un utente per la generazione di report. Ogni utente avr il proprio spazio privato di ricerche salvate. Inoltre qesto space conterr tutte le ricerche salvate e sharate come pubbliche. Scripts: JavaScript files, usati per effettuare certe operazioni sul contenuto
Space Templates
Space Templates: contiene le strutture degli space che possono esser usate come templae per creare nuovi space.
Ogni space pu essere salvato come un template per un riuso futuro dela
Invece di creare ripetutamente la stessa struttura per ogni progetto, si pu mantenere un Project template e replicarlo per ogni progetto.
Tutto il lavoro fatto manualmente potrebbe essere fatto in pochi secondi semplicemente usando un template.
Se il nome del documento include Check -> *Check* (es. Client1Check_7003.jpg), allora la regola spostarlo nel Customer Checks space.
Applicazione regole
Inbound significa che la regola richiamata quando un documento creato
(tramite Web Client) o copiato o spostato (da qualche altro space) o aggiunto (usando le Web Services API) o rimosso (usando drag-and-drop di CIFS, WebDAV, or FTP) nello space Drop Zone Outbound significa che la regola richiamata quando un documento cancellato o tagliato dallo space Drop Zone. Update significa che la regola richiamata quando un documento
updatato. Manual updating nel Web Client, update attraverso network drives
(CIFS, FTP, o WebDAV), update attraverso Web Services API.
Ugualmente, pensa ad una business rule che invia email a centinaia di utenti.
Si possono definire business rule su uno space per assegnare prorpiet aggiuntive dinamicamente a tutti o a certi insiemi di documenti.
Esiste un built-in aspect chiamato Effectivity che aggiunge due propriet ad un documento effective date and expiration date
Si pu customizzare il content model per abilitare il versioning per ogni documento. Ma questo approccio potrebbe essere inefficiente se non si
Quindi ha senso inserire il versioning solo per questa cartella, aggiungendo una regole, selezionando un Versionable aspect , per ogni documento aggiunto.
Mail di notifica
Notifiche quando vengono aggiunti documenti a public space
Notifiche quando vengono effettuati cambi ad alcuni importanti documenti in determinati spaces.
Le Inbound rules saranno applicate solo ai documenti che sono aggiunti dopo
Un documento pu essere uploadato in uno space in modi differenti usando Web Client o FTP o WebDAV o CIFS.
you can also define your own aspects as per your business requirements. More details about changing the data model and defining custom aspects are covered in Chapter 7 di Alfresco Enterprise Content Management Implementation.
Condizioni
1. Specifico name pattern?
2. E in una categoria particolare? 3. E di uno tipo specifico o formato?
Aggiungendo un numero maggiore di condizioni un item deve soddisfare tutte le condizioni per essere selezionato
Built in ations
1. 2. 3. 4. 5. 6. 7. Add aspect to item: aggiunge propriet e comportamenti al documento Add simple workflow: aggiunge approve e reject workflow Check in content: Check in del documento Check out content: Check out del documento Copy item to a specific space: Copia il documento in uno space Execute a script: esegue un JavaScript come una action Extract common metadata fields from content: Extract document metadata 8. Import Alfresco content package: Import come content package 9. Link item to category: Link document ad una categoria esistente 10. Move item to a specific space: Sposta il documetno in uno space 11. Remove an aspect from an item: Rimuove property o set di properties 12. Send an email to specific users: Send email notifications a utenti o gruppi 13. Specialize the type of an item: Definisce il content type di un documento 14. Transform and copy content to a specific space: Trasformazione del contenuto e sposta il file risultato in uno space specifico 15. Transform and copy image to a specific space: Trasformazione e resize di una immagine da un formato ad un altro formato e sposta il file risultato in uno space specifico
1- Aspetti
Ogni aspetto ha differente significato: Classifiable: abilita la categorizzazione cos che le categorie possono essere linkate al documento Complianceable: aggiunge una propriet di conformit chiamata Remove after to the document. Dublin Core: aggiunge metadati Dublin core al documento. Publisher, Contributor, Subject, and Rights. Effectivity: aggiunge la propriet di validit. Effective From and Effective To to the document. Emailed: aggiunge un insieme di propriet. Email Data to the document, usata per cattuare le informazioni della mail, se il documento un attachment di email. Localizable: aggiunge la propriet Locale Summarizable: aggiunge la propriet Summary. Templatable: Enable template view. Translatable: aggiunge la propriet Translations al documento. Versionable: abilita il versioning.
6- Built in JS as Action
E possibile eseguire un file JavaScript selezionando Execute a script as an
action in the Rules Wizard. I files JavaScript gi presenti sono: backup.js append copyright.js backup and log.js
La lista di tutti i JavaScript riguarda tutti quelli disponibili in Company Home | Data Dictionary | Scripts space
6- Custom JavaScript
Creare un file JavaScript, .js, con il seguente codice. Lo script verifca il contenuto nello space Staging e sposta il contenuto, la cui propriet di decorrenza ha un valore minore alla data di oggi, allo space di produzione
var stagingFolder = companyhome.childByNamePath("Intranet/Marketing Communications/Website Documents/Staging"); var productionFolder = companyhome.childByNamePath("Intranet/Marketing Communications/Website Documents/Production"); if(stagingFolder != null) { var i=0; var today = new Date(); stagingChildren = stagingFolder.children; stagingTotal = stagingChildren.length; for(i=0; i<stagingTotal;i++) { child = stagingChildren[i]; if(child.properties["cm:from"] <= today) { child.move(productionFolder); } } }
Usando le Java Script API si possono trovare i nodi (via XPath), navigare la gerarchia dei nodi, effettuare ricerche (incluse Lucene full-text searches), esaminare e modificare le propriet dei nodi, e modificare gli aspetti applicati ai nodi.
Questa caratteristica permette di accedere agli script e I risultati degli script sono
ritornati come stream html nella respone.
Scripting usage
I seguenti oggetti sono disponibili agli scripts per default in root scope: Named object Description companyhome userhome person space The Company Home node
Node representing the current user's Person object The current space node (if any); note that for a script executing from a rule, the
space object will be the space that the rule resides in document script search people The current document
The node representing the script itself A host object providing access to Lucene and Saved Search results A host object providing access to people and groups in Alfresco
session Session-related information (session.ticket for the authentication ticket) Classification . Read access to classifications and root categories
Scripting Esempi
// test accesso alle proprieta di un documento e modifica var docname = document.name.substring(0, document.name.lastIndexOf('.')); document.properties.name = "12345 " + document.properties.name; document.save();
/ modifcare il contenuto appendendo una stringa alla fine document.content = content + "\r\nHere is another line added from a script!
// creare una cartella nello stesso space var folderNode = space.createFolder(docname + " - added by script");
// copia il doc in una nuova cartella nodo creata var copy = document.copy(folderNode);
Auditing
Content versioning . Accesso a versioni precedenti Ripubblicarle come sono o con cambiamenti. Recuperare contenuti cancellati.
Full audit di tutte le attivit degli utenti. Mentre il contenuto pu essere rimosso dal sito, laudit sar sempre recuperabile. . In Alfresco, lauditing fornito a livello dei servizi del repository, quindi disponibile agli utenti e ad applicazioni.
Auditing
Auditing disabilitato per default. Per abilitare la configurazione di default bisogna cambiare lattributo enabled. Per abilitare lauditing tramite un metodo deve essere abilitato on unset sul metodo, abilitato o disabilitato sul service e abilitato al livello pi alto dellelemento da controlalre. Se lelemento marcato enabled="false" dovunnque nello stack lauditing sar disabled. Laudit configuration file <configRoot>\auditConfig.xml.
Auditing
<Audit xmlns="http://www.alfresco.org/model/audit/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" enabled="false" auditInternal="false" mode="all"> <!-- The File/Folder Service --> <Service name="FileFolderService" mode="none"> <Method name="rename" mode="all"/> <Method name="move" mode="all"/> <Method name="copy" mode="all" auditInternal="true"/> <Method name="create" mode="all"/> <Method name="delete" mode="all"/> <Method name="makeFolders" mode="all"/> <Method name="getWriter" mode="all"/> </Service> <Service name="NodeService" mode="none"> <Method name="createStore" mode="all"/>
Auditing
<Service name="PersonService" mode="none"> <Method name="setCreateMissingPeople" mode="all"/> <Method name="setPersonProperties" mode="all"/> <Method name="createPerson" mode="all"/> <Method name="deletePerson" mode="all"/> </Service> <Service name="VersionService" mode="none"> <Method name="createVersion" mode="all"/> <Method name="revert" mode="all"/> <Method name="restore" mode="all"/> <Method name="deleteVersionHistory" mode="all"/> </Service> </Audit>
Per abilitare lauditing, aprire il file <configRoot>\auditConfig.xml e cambiare il valore dellattributo enabled a true.
Auditing
Edita un documento e per lo stesso documento usa il Preview in Template e seleziona show_audit.ftl template dalla lista.
In Company Home | Data Dictionary | Presentation Templates space si pu esaminare il codice del file show_audit.ftl. E un semplice audit template fornito per visualizzare le informazioni di audit.
Workflow
Alfresco ha due opzioni per implementare I workflow: simple workflow o advanced workflow. Con I simple workflows gli utenti finali possono configurarli direttamente senza avere skill tecninci. "add a simple workflow" ad un document quando inserito in una cartella Quando un ocumento ha un simple workflow significa che ha un "forward step e un "backward step ad esempio "Approve e "Reject". Quando uno step invocato il contenuto pu esser copiato o spostato in una altra cartella. Per esempio ci potrebbero essere cartelle chiamate "Draft",In Review", e
Workflow
Simple workflows hanno delle limitazioni: Possono essere solo dei processi seriali. Il contenuto pu essere spostato avanti o indietro, uno step alla volta Un contenuto pu essere in un processo ad una orario dato Contenuto deve cambiare location fiisca per riflettere il cambio di stato. Non possibile catturare o agire sui metadati relativi al processo Tasks non possono essere assegnati a persone o gruppi Oltre che aggiungere regole o azioni delle regole non c modo di aggiungere altra logica
Customizzazione base
Se la customizzazione consiste nella configurazione di files o properties webclient-config-custom.xml or webclient.properties, si possono porre I file di customizzazione nella extension folder
Tomcat: <alfresco>/tomcat/shared/classes/alfresco/extension
Quando Alfresco parte, legge tutti I file di default di configurazione e dopo legge gli item customizzati (nella extension folder). Quindi la customizzazione o estende o sovrascrive litem di configurazione.
Server Configuration
http://wiki.alfresco.com/wiki/Server_Configuration
CORE:
EXTENDED CONFIGURATION:
Repository Configuration Repository Cache Configuration Uso dello spazio Log Disabilitare larchivio Documenti
ImageMagick Configuration Full-Text Search Configuration Transformations Configuration Metadata Extraction Configuration Aggiungere un Mime Type Versioning JMX
Server Configuration
http://wiki.alfresco.com/wiki/Server_Configuration
CORE:
EXTENDED CONFIGURATION:
Repository Configuration Repository Cache Configuration Uso dello spazio Log Disabilitare larchivio Documenti
ImageMagick Configuration Full-Text Search Configuration Transformations Configuration Metadata Extraction Configuration Aggiungere un Mime Type Versioning JMX
Repository Configuration
repository.properties
Alfresco\tomcat\webapps\alfresco\WEB-INF\classes\alfresco
Lucene configuration: path dei file degli indici path dove il contenuto binario immagazzinato
Mail configuration
Admin username
Il file di default ehcache.xml adeguato alla maggior parte dei sistemi ed impostato per approssimativi 512MB di cache heap memory questo il default raccomandato per una Java heap size di1GB
spazio disco.
Considerare lo spazio per I file temporanei e le versioni ogni versione di un file immagazzianto sul disco come copia separata del file. E altamente raccomandato luso di SCSI RAID disk array.
Configurazione posta
Inviare emails da un SMTP server. Non supporta secure SMTP servers. 1. file: <configRoot>/alfresco/repository.properties. 2. email properties:
# Email configuration
Configurazione posta
From Email Address Per modificare il from email address quando gli utenti sono invitati a uno space, aggiungere al web-client-config-custom.xml file nella extension folder:
<config>
<client> <from-email-address>[email protected] </from-email-address>
</client>
</config>
Tomcat application server crea un file di log al giorno. Il log corrente alfresco.log e alla fine del giorno viene fatto il backup come alfresco.log.YYYY-MM-DD (for example, alfresco.log.2006-09-18).
Si pu impostare il livello di logging come info or debug or error in base allammontare delle informazioni desiderate (For example, log4j.logger.org.alfresco.web=info).
Node-services-context.xml
<!-- Map stores to archive stores --> <bean id="storeArchiveMap" class="org.alfresco.repo.node.StoreArchiveMap">
<property name="archiveMap">
<map> <entry key="workspace://SpacesStore"><value>archive://SpacesStore</value></entry>
</map>
</property> </bean>
Server Configuration
http://wiki.alfresco.com/wiki/Server_Configuration
EXTENDED CONFIGURATION:
ImageMagick Configuration Full-Text Search Configuration Transformations Configuration Metadata Extraction Configuration Aggiungere un Mime Type Versioning JMX
ImageMagick Configuration
Installare ImageMagick Puntare ImageMagick binaries nel path di sistema rinominare leseguibile convert in imconvert per evitare un conflitto con Windows
convert.exe
ImageMagick una suite di programmi liberi per la modifica di immagini. distribuita con una licenza compatibile con la GPL, ed disponibile su tutti i principali sistemi operativi. Le funzioni di ImageMagick includono la creazione, la visualizzazione, la conversione da un formato all'altro, e le pi svariate operazioni di modifica.
Atomic="true" true allora la propriet indicizzata nella transazione altrimenti in background. Lindicizzazione del contenuto che richiede una trasformazione prima di essereindicizzato (pdf) non osserva il true, viene sempre in background. Tokenised="true" Se true, il valore viene tokenizzato prima di essere indicizzato; se false, indicizzato "as is" come una singola stringa.
Il tokenizer determinato dal property type nel data dictionary (Italiano, inglese)
Full-Text Search
Per default il contenuto in Alfresco ricercabile in modalit full-text. Ogni contenuto dei seguenti tipologie sar convertito internamente in testo, indicizzato e ricercabile:
Full-Text Search
Fare una ricerca su Alfresco facile. Semplicemente inserire nel campo di ricerca i termini che descrivono linformazione che si desidera, e premere enter.
Customer:
-Customer: ritorna tutti i documenti che non contengono il testo "Customer" Customer Alfresco: ritorna tutti i documenti che contengono "Customer" o
"Alfresco". Equivale a scrivere Customer +Alfresco Customer Alfresco: ritorna tutti I documenti che contengono "Customer" e non contengono "Alfresco"
*inter*:
Search
E pi veloce cercare il contenuto tramite il nome di un file se si conosce il file name o porzione di esso.
Lopzione di ricerca booleana AND disabilitata di default per migliorare le ricerche. Restart Alfresco per rendere effettivi I cambi.
Lucene queries
Lucene queries
Roster Questa ricerca non ritorna risultati per default, quando usando la ricerca per nodi, solo la full text effettuata e sebbene il nome e la descrizione includono roster, il documento non contiene la stringa.
Sample whitepaper
Sample AND whitepaper Ritorna solo sample-a.pdf e sample-b.pdf. E la stessa cosa di usare il pi ("+") come in +sample +whitepaper. Loperatore + richiede che un termine sia nel documento per esser eincluso
Lucene queries
-sample whitepaper Ritorna solo class roster. Il meno ("-") specifica che il risultato non deve includere la parola "sample". M?urice Ab* Lauren~ Riotrnano tutte class roster. ("?") un carattere jolly. Lasterisco ("*") un wildcard. Tilde ("~") denota una fuzzy searchcerca parole similari. In questo caso "Lauren" to "Loren". sample effective whitepaper sample^10 effective whitepaper Compara queste due ricerche.ritornano sample PDFs e class roster. Nella prima ricerca, class-roster.txt mostrata al top della lista dei risultati. Nella seconda, il ("^") carattere usato per incrementare il peso del terminedi un fattore 10. Questo rende i PDFs pi pesanti. Cos si trovano al top della lista
Ricerca Properties
So far you've searched the full text of the sample documents, but what if you wanted to search against a specific property? To do that, use the at ("@") symbol followed by the namepsace and property name, and then the search phrase. @cm\:description:read This search returns both sample PDFs because both contain the word read in their description fields. @cm\:description:(whitepaper -sample) This search shows a combination of a field-based search with the minus operator to return only the documents that have whitepaper, but not sample in their description property. In this case, the search returns only classroster.txt. @sc\:isActive:true Searches for custom properties work as well. This one returns documents where the SomeCo isActive property is set to true.
@cm\:name:([clam TO dog]) Range searches work on strings as well. This search returns class-roster.txt, but neither of the sample Whitepapers.
Report
Usare le ricerche salvate come report Spesso c la necessit di ripetere una ricerca che soddisfi gli stessi criteri di ricerca.
Invece di ripetere la selezione delle opzioni ogni volta possibile salvare I criteri
per riusare la ricerca cos impostata.
Si crea cos un report personalizzato. Questo pu essere condiviso con altri rendendo la ricerca salvata come pubblica. Altri report, possono essere considerati privati e saranno inseriti nella lista come
Search.
ComplexContentTransformer.
mimetype-map.xml mimetype-map-openoffice.xml
Invece, si pu fare un override del mimetypeConfigService bean in un extension file, quale <extension>/alfresco/extension/custom-services-context.xml.
Se si vogliono tutti I contenuti versionabili dal momento della creazione necessario modificare la definizione del dizionario del tipo di contenuto per includere il mandatory aspect Versionable.
<mandatory-aspects> <aspect> cm:versionable </aspect> </mandatory-aspects>
Si pu anche controllare quali tipi di contenuto versionare automaticamente e a quali no, applicando laspetto versinable a custom sub-type del cm:content.
Auto Versioning
Per default tutto il contenuto versionabile ha lAUTO-Version attivo. Questo vuol dire che una nuova versione creata nella history quando il contenuto uploadato.
<type>d:boolean</type>
<default>false</default> </property> <property name="cm:autoVersion"> <title>Auto Version</title> <type>d:boolean</type> <default>false</default> </property> </properties> </aspect>
JMX Console
Per default, i System Administrators possono riconfigurarre Alfresco spegnendo il server, editando I file cdi configurazione o proprerties quindi riaviando il server.
Per esempio dovrebbe essere possibile cambiare temporaneamente il livelli dei log per debuggare il sistema.
JMX Console
http://wiki.alfresco.com/wiki/JMX
JMX Console
Ogni cambio fatto con linterfaccia JMX sono transitorie, ad esempio si pu cambiare il livello dei log temporaneamente. Quindi tutti questi cambi andarnno persi quando il server riparte. Se alcuni di questi cambi dinamici necessitano di essere persistenti (cos da sopravvivere al restar del server) allora dovrebbero essere applicati ai file di configurazione. Per esempio: log level change - edit log4j.properties on the classpath max users - edit custom repository properties file (server.maxusers property) singe-user mode - edit custom repository properties file (server.singleuseronly.name property) read-only mode - edit custom transaction properties file (server.transaction.allow-writes property) disable/enable file servers (FTP/CIFS/NFS) - edit custom file servers config xml file
Altre Configurazioni
Altre configurazioni non incluse in questa presentazione
EXTENDED CONFIGURATION:
Cluster
Active Directory, LDAP High Availability JBPM Cambio delle porte di default
Backup
Il Backup di un repository Alfresco deve prevedere il backup delle directory puntate dalla dir.root e quelle che vengono usate dal database. Fare il backup dei uno senza gli altri fa si che il backup non potr essere restorato.
Backup del database Backup degli indici Backup dei documenti Backup applicativo Sistema di configuration management
Backup
Per default, la dir.root contiene sia il contenuto che gli indici cos per un backup a freddo possibile effettuare il solo contenuto e fare una reindicizzazione quando il backup effettuato.
Stop Alfresco. Backup il database a cui alfresco punta Alfresco, usando il tool del database. Backup Alfresco dir.root directory nella sua interezza Memorizza database e Alfresco dir.root backups insieme.
Start Alfresco.
Alfresco include un background job responsabile del backup degli indici che per default configurato per essere eseguito alle 3am di ogni notte. Lhot backup process must not run concurrently with this background job, so you should either ensure that the hot backup completes by 3am, or wait until the index backup job has completed before initiating a hot backup.
Restore
1.Stop Alfresco. 2.Copia la dir.root esistente in una cartella temporanea. 3.Restore dir.root.
4.If you are restoring from a hot backup, rename dir.root/backup_lucene_index to dir.root/lucene-indexes.
5.Restore the database from the database backups. 6.Start Alfresco.
2. Nota importante: per la reindicizzazione incrementale bisogna impostare la propriet index.recovery.mode a "AUTO" o lasciarlo al suo valore di default "VALIDATE".
Gli item cancellati (nella cartella temporanea, consumano spazio, quindi buona pratica pulire periodicamente la cartella.
Questi item non potranno pi essere recuperati. E raccomandabile un backup regolare dei propri dati.
Web Services
Web scripts sono una delle pi interessanti aggiunte allarchitettura di Alfresco. Next Generation Internet (NGI) o Web 2.0 construita su servizi RESTful . La ragione che I servizi RESTFul sono tipicamente molto pi facili da lavorare usando linguaggi di scripting e toolkit Ajax piuttosto che servizi SOAP-based, perch sono invocati attraverso semplici URL.
Quando un repository ha una interfaccia Restful molto pi facile integrarlo in una soluzione NGI. Il Web Script framework, basato sul pattern Model- view Control (MVC) permette di costruire le API Restful al repository.
REST
REST sta per Representational State Transfer. Il Framework Web Script stato introdotto dalla versione 2.1
REST descrive uno stile architetturale per interazioni basate su semplpici URL-based richieste e risposte su HTTP.
Web scripts stanno diventando velocemente il metodo preferito di integrazione tra frontend e backend con Alfresco, particolarmente per portali o siti web dinamici.
REST
Vedremo come Scrivere web scripts che creano, leggono o cancellano dati nel repository di backend e ritornano risposte in HTML, XML, e JSON ( un modo per descrivere JavaScript objects come text invece del pi verboso XML)
Fare chiamate asynchronous JavaScript (AJAX) ai web scripts Storicamente cerano due approcci per interagire con Alfresco attraverso servizi: SOAP-based Web Services e REST. Alfresco ha avuto SOAP-based Web Services API disponibili per abbastanza tempo, ma i serivizi SOAP-based prendono troppo tempo per svilupparli e bisogna prevedere requisiti pesanti lato client rispetto ai servizi RESTful.
MVC
Il Framework Web Script rende facile seguire il pattern Model-View-Controller (MVC). Il controller JavaScript server-side, un Java Bean, o entrambi. Il controller cattura la request, effettua la business logic che necessaria, popola il modello con i dati, e quindi effettua il forward della request alla view.
La view costituita da uno o pi template FreeMarker responsabili di costruire una response nel formato appropriato. Il modello essenzialmente una struttura dati che viene passata dal controller alla view.
Il mapping della URL al controller fatto attraverso un XML descriptor, se lo script richiede una transazione o no, e i requisiti di autenticazione. Il descriptor opzionalmente descrive argomenti che possono essere passati allo scrip cos come i formati di risposta disponibili.
http://www.4it.it