Nuxeo ECM - Architecture Overview - May 2008

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    3 Favorites

    Nuxeo ECM - Architecture Overview - May 2008 - Presentation Transcript

    1. Nuxeo EP 5 Architecture Overview
      • An ECM platform
          • Generic services and components with an « extension and customisation » model
        • A framework for building ECM applications
          • Thin client (Web) ECM applications
          • Rich client (RCP) ECM applications
          • ECM Service stack
      • Prepackaged ECM applications
          • Nuxeo EP 5 WebApp : a « turnkey » ECM Web application
          • Apogee + Nuxeo5EP : a « turnkey » ECM Rich client application
      Nuxeo Enterprise Platform
    2. Nuxeo Enterprise Platform Web client Flex client RCP client Presentation Service Repository Nuxeo Runtime Component Model and deployment services Nuxeo Core Audit Workflow Relations Transformations Search/Indexing Directories Import/Export ... Rest/WS API WebApp Plugin Plugin Plugin Plugin Plugin Plugin
      • Runtime layer: OSGi infrastructure
        • Provides components and extension model
        • Provides deployment services
      • Core layer: embeddable document repository
        • Extensible storage oriented services
      • Service layer: an extensible set of ECM services
        • Generic and configurable set of ECM services
      • Client layer: UI building blocks
        • Pluggable actions and views management
        • Web or RCP based
      Nuxeo EP 5 – main layers
      • Deployment transparency
        • OSGi platform (Eclipse RCP) or JEE platform (JBoss AS)
        • components can be deployed client side or server side
      • Extensibility
        • Nuxeo components expose an Extension Point system
        • Components can be configured and extended
          • via XML descriptors
          • via Java classes
      • Flexibility
        • Choose components bundles according to business needs
      Nuxeo EP 5 – key architectural facts
      • Loosely coupled components
        • Event handler system: Core and Runtime
        • JMS Event handler: Service stack
        • Client Layer: Seam Events / RCP Events bus
      • Standards based
        • JEE: EJB3, JSF, JMS, JTA
        • Java: OSGi, JCR
        • XML: XSD (Document type definitions) , RDF (relations)
        • Open Source: Lucene, Jena RDF, JackRabbit, Seam, Restlets
        • Web: http and webdav
        • Web Services: JAX-RPC, JAX-WS, XML-RPC, REST
      Nuxeo EP 5 – key architectural facts
      • Multiple flavoured APIs
        • POJO local API for services
        • EJB3 remote API for services
        • Web Services API (JAX-WS and WS-Addressing)
        • REST API via Restlet Integration
        • WebDAV API
        • JS API for Ajax (via Seam Remoting / JSON)
      • Integrated build and packaging system
        • Maven 2.0 for build, test and packaging
        • Nuxeo deployer for components deployment
      Nuxeo EP 5 – key architectural facts
    3. Nuxeo EP 5 Core Overview
      • Document Repository Service
          • Designed to be highly pluggable
          • Storage backend independent
          • Can be used standalone or with Nuxeo 5 EP
      • Nuxeo EP can use several repositories at the same time
      Nuxeo Core
    4. Nuxeo Core - extensibility Document Model Security Model LifeCycle Policy Versioning Query Pluggable Security policies Pluggable LifeCycle storage Configurable LifeCycles Pluggable version storage Configurable versionning Configurable doctypes Event system Pluggable event handlers Storage model Pluggable storage backends XML Code XML Code XML Code XSD Code XML Code
      • XSD based document types and schemas declaration
        • Complex types support
        • Inheritance support for schemas and document types
      • Pluggable security model
        • Ordered ACLs with Grant/Deny and inheritance
        • Optional meta-data based security
      • Pluggable versioning
        • Versioning policy
        • Versioning storage
      Nuxeo Core – key features
      • Pluggable backend storage
        • JCR: FileSystem or JDBC backend
        • Non JCR backend in development (native SQL storage)
      • Configurable life-cycle management
      • Pluggable XML Import/Export pipe
      • Lazy loading of documents
        • Configurable pre-fetching
      Nuxeo Core – key features
      • Query support
        • NXQL Query language
        • BIRT ODA Connector
      • Flexible API
        • POJO API
        • EJB3 remote API
        • WS: JAX-RPC read API
        • WebDAV API
      Nuxeo Core – key features
    5. Nuxeo EP 5 ECM service stack overview
      • Nuxeo EP 5 ECM Stack
        • Provides generic ECM services on top of Nuxeo Core
        • Services are loosely coupled and can be used independently
      • Most services provide 2 types of access
          • Local API: POJO
          • Remote API: EJB3
          • Service location is transparent via Nuxeo API
            • Framework.getService()
        • Services stack can be split on several JVMs
          • Platform layout can be configured via XML
      Nuxeo Services : ECM Stack
    6. Nuxeo Service – design pattern OSGi Component EJB3 Facade Document Model Seam Component
            • Configuration via Extension Points
            • Pluggable implementation
            • JEE integration layer (JTA, JAAS, State Management)
            • Remoting
            • Service API to Document API mapping
            • Manipulate Nuxeo Services as Seam native components
      Service Plugins Plugins Plugins Service interface Adapter @Unwrap
    7. Nuxeo Services - examples Configurable audit based on JMS Abstract Workflow and BPM engine (jBPM) Abstract Relation engine (RDF / Jena) Pluggable transformation engine (PDF, text...) Abstract Indexing and Query engine (NXQL) (Compass/Lucene) Record engine with SQL/LDAP support Users and Groups management on top of Directories Mime-type detection service Manage comments on documents AuditService WorflowService RelationService TranformationService SearchService DirectoryService UserManagerService MimeTypeService CommentService
    8. Nuxeo Services - examples Messaging API on top of JMS File management API (mapping, unicity...) High level document type management Service to manage layouts associated to doc types Manage actions and conditions Manage URL codecs Manage pluggable authentication on top of JAAS Manage placeful configurations Manage user subscriptions to notifications EventService FileManagerService TypeManagerService LayoutService ActionService URLService AuthenticationService PlacefulConfigService NotificationService
    9. Nuxeo EP 5 ECM clients
    10. Standard Web client
      • Access all platform services via a browser
      • Integrates latest JEE web technologies
        • JSF 1.2 and Facelets
        • Seam (link JSF and EJB3)
        • Ajax4JSF
      • Integrates a theme service
      • Pluggable WebApp
        • contribute configuration
        • contribute views
        • contribute actions
        • contribute themes
        • ...
    11. Web UI – Key features
      • Totally pluggable
        • Each component contributes some part of the UI
        • Each service may have its web part
      • Seam integration
        • Nuxeo Services are transparently accessed as Seam objects
      • Built-in infrastructure
        • Forms / Layout engine
        • Batching / Queries
        • NX JSF Components
      • Improve JSF
        • REST navigation
        • Pluggable URL encoding schemes
        • Method bindings
    12. Web UI: Views contribution NXAudit NXWorkflow NXRelations Contributed views
    13.  
    14. Apogee: Rich Client
      • Mainly used for heavy contribution
        • Structured text edition
        • Picture management
        • High productivity needs
      • Uses Eclipse Native plugin system (OSGi based)
        • Same model as Web UI client
        • Some common services with UI Web
        • Contribute configuration
        • Contribute portlets
        • Contribute actions
        • ...
    15. Apogee screenshots
    16. Shell client
      • Aimed at technical users
        • Technical administration
        • Mass document import
        • Testing
      • Plugin system to contribute new commands
    17. Flash client
      • Used for some specific projects
        • Simple feature
        • Very specific Look&Feel
      • Uses Nuxeo RestAPI to communicate with the server
    18. WCM client
      • New WCM oriented “WebEngine” released very soon
        • Wiki, Blogs
        • Web sites
      • Based on webmaster-friendly technologies
        • FreeMarker
        • Scripts
        • Publisher principle
      • Integrated with Nuxeo Runtime component model
        • contribute templates
        • contribute traversal hooks
        • contribute scripts
        • ...
    19. Desktop integration clients
      • Drag&Drop support
        • IE Helper (.Net) / Firefox plugin (XPI)
        • Server side access: Restlet and Seam Remoting
      • Editor integration (liveEdit V2)
        • nxedit Protocol handler
          • Win32: .net protocol handler
          • Multi-platform: Firefox plugin
        • Launches editor process depending on mime-type
        • First editor targets:
          • MSOffice: via .Net COM Interop + MSO plugin
            • Lock/Version/Save
            • integrated Side Bar for browsing
          • OpenOffice via Java/Uno + extension
        • Server communication : JAX-WS / Restlets
    20. Nuxeo EP 5 APIs
    21. APIs
      • Java API
        • Available on all components (Services and Core)
      • Remote Java API (EJB3)
        • Available on almost all components (Services and Core)
      • WS JAX-RPC
        • Read API for most data
      • WS JAX-WS
        • Pluggable infrastructure ready (WS-Addressing)
      • WebDAV
        • Pluggable access to content repository
    22. APIs
      • XML-RPC
        • Pluggable infrastructure (in use for projects)
      • REST API
        • Simple pluggable API
        • All basic features already exposed
      • JSR 168 Portlet
        • Simple portlets
        • Portlets API
      • JavaScript API via Seam Remoting
        • Easily expose server-side controller to JS code

    Stefane FermigierStefane Fermigier, 2 years ago

    custom

    6842 views, 3 favs, 6 embeds more stats

    Overview of the Nuxeo open source ECM platform arch more

    More Info

    © All Rights Reserved

    Go to text version
    • Total Views 6842
      • 6454 on SlideShare
      • 388 from embeds
    • Comments 0
    • Favorites 3
    • Downloads 268
    Most viewed embeds
    • 382 views on http://blogs.nuxeo.com
    • 2 views on http://blogs.nuxeo.org
    • 1 views on http://gironde.nuxeo.com:18880
    • 1 views on http://www.netvibes.com
    • 1 views on http://66.102.9.104

    more

    All embeds
    • 382 views on http://blogs.nuxeo.com
    • 2 views on http://blogs.nuxeo.org
    • 1 views on http://gironde.nuxeo.com:18880
    • 1 views on http://www.netvibes.com
    • 1 views on http://66.102.9.104
    • 1 views on http://64.233.179.104

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as innappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel

    Categories