Apogée Nuxeo RCP - EclipseCon...
Transcript of Apogée Nuxeo RCP - EclipseCon...
Apogée&
Nuxeo RCP
Eclipse Summit Europe 200611-12 October 2006, Esslingen am Neckar, Germany
Eric Barroca, [email protected]éfane Fermigier, [email protected]
Agenda
• Who we are
• The Nuxeo ECM stack
• Apogée
• Nuxeo RCP
• Status, perspectives and collaboration
• Case Studies
• Conclusion
Enterprise Content Management
Convergence of all non-numeric
information management software and
processes in an organization
Nuxeo
• OSS ECM Vendor since 2000• Creator of Nuxeo ECM
(formerly Nuxeo CPS)• Pure OSS player• 31 people in Paris, London,
Bucharest, Dakar• Self-funded & pro!table• 1000+ successful
deployments2003 2004 2005 2006
€ 0.3M
€ 0.7M
€ 1.3M
€ 2.1M
Prestigious Customers
• Top european companies• Prestigious customers
• Defense, Energy• Press, Government
• Critical and large ECM applications• Document Management• Collaboration• Compliance, etc.
• Partnering with major IT companies
Nuxeo ECM: The Big Picture
Nuxeo Core
Nuxeo Runtime
Nuxeo Enterprise Platform
Nuxeo Java EE Services
Nuxeo WDK
Nuxeo Enterprise Components
Nuxeo Rich Client Platform
MS O"ce Extension
Apogée Infrastructure
Functional plugins
OSGi
EclipseRCP
JavaEE
5
Why Apogée? (1/2)
• ECM desktop applications, the Eclipse way!
• Build a core infrastructure and a family of components targeted to ECM-oriented desktop applications
• Components should be independent enough to be used separately
• Leverage industry standard and existing open source components
Why Apogée? (2/2)
• Vendor-neutral• Any ECM platform vendor should be able to use and create
connectors for Apogée
• O#er user-friendly tools
• No bloatware • Think “user experience” and “e"ciency”• Design “components” and “reuse”
Why a Rich Client Framework?
• For intensive document-oriented work, the browser is not enough...
• Deep integration with the desktop
• Hardware device integration (scanner...)
• O$ine work with synchronization
• Responsive and rich interface
• The browser is not a window manager nor HTML/CSS a modern UI toolkit...
• ...at least not for users!
Core Infrastructure
Applicative components
Content Type Service
StorageService
Security(ETF)
XForms Engine
ContentSchemas
Indexing(Apache Lucene)
Search
RelationsEngine
ContentModel
Remote Interface
Sync(SyncML)
Cache
Mail Client Calendar
CollaborativeWorkspaces
ContentEditors
IM(ECF)
Whiteboard
etc.
BPM(Eclipse BPEL)
Apogee Content Model
JCR Nuxeo Core Eclipse FS
Eclipse Apogée Project
Standards Support• Standard way to access di#erent repositories• Nuxeo Core model• Java Content Repository (JSR-170) as storage engine• iECM API
• XForms• Eclipse Forms generation from XForms• Enable form sharing between client and the server
• XML Schemas• Content schemas (and storage schema generation)• XForms dynamic validation
• SyncML for client/server and client/client sync.
• RDF for relation storage
Nuxeo RCP
Apogee Infrastructure
Apogee Components
Nuxeo RCP Components
Nuxeo RCP?
• Open source too• Based on Eclipse Apogée• Embeds Nuxeo Core• Integrates with the Nuxeo
Enterprise Platform 5
• Integrates with third-party software (ex: Adobe, ImageMagic, etc.)
• Professional support and services from Nuxeo
Apache Jackrabbit (+DB)
Nuxeo Core Engine
Nuxeo Core• Embeddable Content
Management Core (POJO)• XML Schema to de!ne
content schemas• Uni!ed storage backend• Low-level document
management services• Powerful Query API (NXQL)• Core Connectors o#er a
public local and remote interface
Nuxeo Core
Core Services
Core Repository
Query Engine Events XSD Engine
NXQL Engine Data Model SchemasManager
Content Repository
Content Store (JCR)Apache Jackrabbit - Pure SQL - XML Database
Storage Adapter
POJO API Remote API Java EE API
Nuxeo RCP Components
• Powered by Nuxeo Core:• NXQL engine• Nuxeo Core sync engine• Local / Remote databases
• Full integration with Nuxeo EP
• External software integration:• Adobe Reader• Image Magick• Digital signature software
• Improved Look and Feel
Design
✓ Overall architecture (v1, refactoring in progress for v2)
✓ Content storage and model (idem)
✓ XForms engine and XML Schemas validator
✓ Relation engine
‣ Security• ACL-based model implemented into Nuxeo Core• ETF/Higgins Integration (auth schemes)
Development
✓ Global infrastructure [Partial]
✓ Jackrabbit integration, content model
✓ XForms engine and XMLSchemas validation❖ Synchronization [in progess]
✓ Content Editor (MSO"ce, OpenO"ce and Mozilla Composer through Xored Composer)
Collaboration with Eclipse Projects
• RCP as foundation
• ECF for communication and synchronous collaboration• Instant Messaging• Shared whiteboard
• ETF for security and authentication
• Corona as collaborative workspaces engine
• BIRT for activity audit and reporting
• Eclipse BPEL as work%ow designer
Collaboration with other Projects
• Funambol (ObjectWeb) as SyncML server and client API
• Jackrabbit (Apache) as JCR-compliant repository (storage engine)
• Jena (HP) or Sesame (OpenRDF) as RDF database engine
Community
• Project accepted as an Eclipse Technology Project in August
• 60 subscriptions to the mailing-list
• Website online at http://apogee.nuxeo.org
• SVN at http://svn.nuxeo.org/pub/Apogee
• SVN, web site, mailing list, etc. to be transfered to eclipse.org ASAP
CNCC Reader (1/3)• Customer: French Company of Statutory Auditors
• Challenge: provide an o$ine reader for the whole french law (3 GB)
• Key Functions:• Search• Semantic navigation• O$ine work
• Technologies:• Eclipse Apogée• RDF (Sesame database)• Lucene• OpenO"ce integration• Nuxeo Core
AFP Console NG (1/3)• Customer: Agence France Presse
• Challenge: • Provide a reactive interface enabling journalist to write
multimedia news stories with a collaborative approach
• Key Functions:• WYSIWYG XML editor• Search, navigation and content reuse from RSS feeds• Images manipulation• Multi-channels broadcasting• Shared collaborative workspaces• Work%ow
AFP Console NG (2/3)
• Technologies:• Eclipse Apogée• Nuxeo Core• Xored HTML editor• ImageMagick• Eclipse auto-update