springinalfrescoecm 090629053231-phpapp02
DESCRIPTION
TRANSCRIPT
![Page 1: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/1.jpg)
Spring in Alfresco ECMA success story
![Page 2: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/2.jpg)
About me
Open Source Product Specialistcontent managementsystem integrationweb / portal
Alfresco ECM
Certified Alfresco TrainerForum supporter (en, it)
JBoss Portal
Forum supporter
Contributions DbDep Plugin
Apache IvyApache Maven
CMIS PortletProject Leader - JBoss WikiCommitter - JBoss LabsAffiliate Partner at PacktEditor at oneOpenSource.it
![Page 3: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/3.jpg)
Agenda
1. ECM in the real world2. Alfresco ECM3. Spring in Alfresco
![Page 4: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/4.jpg)
ECM=Enterprise Content Management
AIIM Definition (Association for Information and Image Management)Enterprise Content Management embodies the technologies used to capture, manage, store, preserve and deliver content and documents related to organizational processes.
WikipediaA system for organizing and facilitating collaborative creation of documents and other contentAble to monitor content through its lifecycle, and track changes to content, and users of the contentSometimes a web application used for managing websites and web contentIn many cases, content management systems require special client software for editing and constructing articles
![Page 5: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/5.jpg)
ECM architecture - step 1
![Page 6: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/6.jpg)
ECM architecture - step 2
![Page 7: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/7.jpg)
What is Alfresco
Centralized Repository / Services Interfaces
Alfresco Web Client (JSF Client)FTP/WebDAV/CIFS (network share)Office 2003/7 Plug-in + SharePoint ProtocolCMIS (Content Management Interoperability Services)Web Services APIJCR API
Authentication and Security
Alfresco managed accountsLDAP, OpenLDAP, Apache DS Active DirectoryKerberos
![Page 8: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/8.jpg)
What is Alfresco
Standard JEE Applicationbased on Spring Framework
Easily Extendable FreemarkerJavaScriptWeb ServicesWeb Scripts (REST)Java APIPlug in new technology through Spring
Business Processe Orchestration
Simple WorkflowAdvanced – based on jBPM
![Page 9: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/9.jpg)
Alfresco - software architecture
![Page 10: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/10.jpg)
Alfresco - software architecture
![Page 11: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/11.jpg)
Alfresco - Spring conventions
Foundation Repository ServicesPublic Services
Springbean IDs begin with uppercase letter Private Components
Springbean IDs begin with lowercase letterApplication context = Spring contextSpring AOPSpring Security (ex Acegi)
![Page 12: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/12.jpg)
Alfresco - web.xml
![Page 13: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/13.jpg)
Alfresco - web-application-context.xml
![Page 14: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/14.jpg)
Alfresco - application-context.xml
![Page 15: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/15.jpg)
Alfresco - Foundation Services APITransaction-aware (more methods invocation)A unique API defined by a Spring Context for
Application interfacesWS APICMIS APIJCR APIWebScript API
JavaScript Server Side (Mozilla Rhino)Virtual File Systems
CIFSFTPSharePoint Protocol
![Page 16: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/16.jpg)
Alfresco - Foundation Services API
To create your own Alfresco extension get a service using ServiceRegistry provided by Alfrescouse Spring getBean() methodeach component can be injected using IoC
public setterXML bean ref
![Page 17: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/17.jpg)
Alfresco - public-services-context.xml
![Page 18: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/18.jpg)
Alfresco - content-services-context.xml
![Page 19: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/19.jpg)
Alfresco - contentService (Spring bean)
![Page 20: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/20.jpg)
Alfresco - RoutingContentService.java
![Page 21: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/21.jpg)
Alfresco - RoutingContentService.java
![Page 22: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/22.jpg)
Alfresco - Spring Configuration Filescustom-repository-context.xml
![Page 23: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/23.jpg)
Alfresco - Configuration Files example
![Page 24: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/24.jpg)
Alfresco - Configuration Files example
![Page 25: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/25.jpg)
Alfresco - Configuration Files example
![Page 26: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/26.jpg)
Alfresco - Spring AOP Proxies
ProxyFactoryBeandefine an array of interfaces implemented by targetdefine a list of advisors (interceptor names)
ordering is significantthe first interceptor will be the first to be able to intercept the method call
![Page 27: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/27.jpg)
Alfresco - Spring AOP - Advisor
An advisor is based on these components:Pointcuts
WHERE Advice
ACTION
![Page 28: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/28.jpg)
Alfresco - Spring AOP - Pointcuts
![Page 29: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/29.jpg)
Alfresco - Spring AOP Proxies
![Page 30: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/30.jpg)
Alfresco - Spring Security (ex Acegi)
Authentication management forLDAPHTTPNTLMX509RESTPluggable IoC XML
![Page 31: Springinalfrescoecm 090629053231-phpapp02](https://reader033.vdocument.in/reader033/viewer/2022042713/545c91e0af7959be0e8b4858/html5/thumbnails/31.jpg)
Alfresco - Spring Security (ex Acegi)