SlideShare une entreprise Scribd logo
1  sur  20
“Real time” collaboration inside
a Word document using Alfresco
          Alfresco Tech Talk
             26 June 2009
                  by

         Jason Harrop, Plutext
Agenda

• Part 1: Collaboration inside a Word document
• Part 2: Inline editing
About Plutext

• We help organisations exploit their Word documents,
  outside the Microsoft silo (eg in Java, or sans SharePoint)
• Core product:
   – Plutext collaboration in Word (on Alfresco)
• Components:
   – docx4all – embeddable Java application/applet
   – docx4j open source project
             +     =
• Prototypes:
   – Alfresco inline docx editors
   – docx wiki (in Alfresco)
Part 1:

COLLABORATION INSIDE A WORD DOCUMENT
The problem with Word today

• It doesn’t matter how you try to open the document…
   – Choose offline editing in Alfresco Explorer (or Share)
   – Via CIFS or WebDAV (and with or without Alfresco’s Word Add-In)
   – Via the SharePoint API
• Only one user can be in “the document” at any time
• Fundamental limitation of Microsoft Word
• .. so you get a proliferation of copies
   – the user’s working copy
   – copies made by users and collaborators
• Which the document owner has to reconcile
   – Tedious, time consuming, and
   – Error prone
• .. and which pollute your search index etc.
Basic Demo


 pdates/adds/moves/deletes

 onflict handling
Docx4all: cross platform docx editing, with collaboration.
Under the hood




                                                                            Alfresco repository
                    We
                       bD
                           AV
                                                       WebDAV
                   We
                      bS
                         erv
                            ice                                                   .docx (unzipped)
                               s




                                                       Plutext AMP
C# VSTO Word 2007 Add-In                                             JCR



                                             Web                     SOAP
                                            Services
                                AV
                              bD
                           We           s
                                   vice
                             b Ser
                           We


       Java Swing App
More demo



etting up a document

ontent controls

heck in comments

nvite users


udit trail

ecent changes

ersion history
Sweet spot?

• High value documents (looming deadlines: even better)
• Document written/edited by > 1 person,
  so merging copies is a pain
• Using Alfresco 3.1 Enterprise or Labs 3d, or later
• Most (not necessarily all) users on Word 2007
Under the hood – future*


                                                                                                                        Alfresco repository
                      Sha
                            rep
                                                                                             Sharepoint
                  We
                                  o in
                                         t                                                      API
                     b      Se
                              rvi                                                                                                 .docx (unzipped)
                                    ces




                                                                                           Plutext
                                                                                                         CMIS




                                                                                            AMP
C# VSTO Word Add-In




                                                                                 Web        WebDAV
                                                                                Services
                                       AV
                                  W ebD
                                               s
                                          vice
                                    b Ser
                                  We
                                                                     P
                                                             o r S ST
                                                        P


                                                                  OA
                                                     HTT

                                                                 RE




      Java Swing App




                                               Web browser               * This page contains forward looking statements (which will probably largely pan out)
Part 2:

INLINE EDITING
Alfresco can give you a preview of a docx
How did we do that?

• Labs (current svn tip = r14939), with
   – OpenOffice 3.1
   – pdf2swf


• api/node/noderef/content/thumbnails/webpreview does
  what it should, as long as web-preview.js invokes it
• need node.previews to include “webpreview”
  so Alfresco.WebPreview gets that value.
  (.. I just hard coded it in web-preview.get.html.ftl )
.. however this is not inline editable

• There are a number of solutions around for editing documents in
  the web browser, including:
   – Google Docs
   – Zoho
• The problem with these is that:
   – On load (import), they convert your Office document to their own internal
     format, and
   – On save (export), they convert it back to the Microsoft format
   Result: two conversions; many documents will lose formatting or their “in-
     process” state. (This is why OpenOffice never displaced M$ Office)
• Key Requirement: an inline editor’s native format needs to be
  Microsoft’s “Open XML” Office format – now an ISO standard.

  This is the only way to ensure nothing gets lost!
At the SF meetup, I demo’d simple inline editing in the Explorer (JSF)
client. This uses Javascript in the browser to manipulate the raw OpenXML
DOM.




See my post “HOW-TO add an inline editor” in the Alfresco forums for the
steps needed to add an inline editor to Alfresco.
Here is docx4all – our Swing app - performing the same role (running as an
applet in the browser, and using WebDAV GET/PUT to load/save)
Aside – alt-drag to liberate the applet!
You can have a wiki of docx documents

Ingredients:
• Display docx inline in web browser
• Edit inline
• Hyperlinks:
   – Click to follow
   – Creating one (via the browser or Word) creates target docx (if nec)
Why?
• Knowledge workers can publish Office documents directly to the
  wiki, and edit them any conversions
• Cut/paste wiki content into new documents, without loss of
  formatting
• No need to learn new editing tools
   – Create/edit wiki pages in Word 2007 (or your web browser)
• A single standard for corporate document formats
   – Open XML ISO standard documents
Feedback please!


Please let me know which bits you think would be most useful.

                                jason@plutext.org

                                       Thanks!

                                -------------------------

•   Blog:           http://dev.plutext.org/blog
•   Collaboration test drive: http://alpha.plutext.org/alfresco/register.html
•   Docx4j download, forums: http://dev.plutext.org/
•   Docx4all:                 http://dev.plutext.org/trac/docx4all/wiki/Collaboration
•   Twitter:                  jasonharrop

Contenu connexe

Tendances

Intro To Alfresco Part 1
Intro To Alfresco Part 1Intro To Alfresco Part 1
Intro To Alfresco Part 1Jeff Potts
 
Oracle Service Bus (OSB) for the Busy IT Professonial
Oracle Service Bus (OSB) for the Busy IT Professonial Oracle Service Bus (OSB) for the Busy IT Professonial
Oracle Service Bus (OSB) for the Busy IT Professonial Frank Munz
 
The lazy administrator, how to make your life easier by using tdi to automate...
The lazy administrator, how to make your life easier by using tdi to automate...The lazy administrator, how to make your life easier by using tdi to automate...
The lazy administrator, how to make your life easier by using tdi to automate...Klaus Bild
 
Introduction To J Boss Seam
Introduction To J Boss SeamIntroduction To J Boss Seam
Introduction To J Boss Seamashishkulkarni
 
Introducing WebLogic 12c OTN Tour 2012
Introducing WebLogic 12c OTN Tour 2012Introducing WebLogic 12c OTN Tour 2012
Introducing WebLogic 12c OTN Tour 2012Bruno Borges
 
Developer’s intro to the alfresco platform
Developer’s intro to the alfresco platformDeveloper’s intro to the alfresco platform
Developer’s intro to the alfresco platformAlfresco Software
 
Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...
Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...
Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...Serdar Basegmez
 
Web development with ASP.NET Web API
Web development with ASP.NET Web APIWeb development with ASP.NET Web API
Web development with ASP.NET Web APIDamir Dobric
 
What Is Alfresco
What Is AlfrescoWhat Is Alfresco
What Is Alfrescofosulliv
 
BP-7 Share Customization Best Practices
BP-7 Share Customization Best PracticesBP-7 Share Customization Best Practices
BP-7 Share Customization Best PracticesAlfresco Software
 
Red Hat Open Day JBoss Fuse
Red Hat Open Day JBoss FuseRed Hat Open Day JBoss Fuse
Red Hat Open Day JBoss FuseAdrian Gigante
 
Getting Started with CMIS
Getting Started with CMISGetting Started with CMIS
Getting Started with CMISJeff Potts
 
Alfresco 5.0 Technology Review
Alfresco 5.0 Technology ReviewAlfresco 5.0 Technology Review
Alfresco 5.0 Technology ReviewZia Consulting
 

Tendances (20)

Intro To Alfresco Part 1
Intro To Alfresco Part 1Intro To Alfresco Part 1
Intro To Alfresco Part 1
 
Oracle Service Bus (OSB) for the Busy IT Professonial
Oracle Service Bus (OSB) for the Busy IT Professonial Oracle Service Bus (OSB) for the Busy IT Professonial
Oracle Service Bus (OSB) for the Busy IT Professonial
 
The lazy administrator, how to make your life easier by using tdi to automate...
The lazy administrator, how to make your life easier by using tdi to automate...The lazy administrator, how to make your life easier by using tdi to automate...
The lazy administrator, how to make your life easier by using tdi to automate...
 
Introduction To J Boss Seam
Introduction To J Boss SeamIntroduction To J Boss Seam
Introduction To J Boss Seam
 
Samba management Console
Samba management ConsoleSamba management Console
Samba management Console
 
Introducing WebLogic 12c OTN Tour 2012
Introducing WebLogic 12c OTN Tour 2012Introducing WebLogic 12c OTN Tour 2012
Introducing WebLogic 12c OTN Tour 2012
 
CMIS Introduction
CMIS IntroductionCMIS Introduction
CMIS Introduction
 
Java Web Services
Java Web ServicesJava Web Services
Java Web Services
 
Spring In Alfresco Ecm
Spring In Alfresco EcmSpring In Alfresco Ecm
Spring In Alfresco Ecm
 
Rest overview briefing
Rest  overview briefingRest  overview briefing
Rest overview briefing
 
Developer’s intro to the alfresco platform
Developer’s intro to the alfresco platformDeveloper’s intro to the alfresco platform
Developer’s intro to the alfresco platform
 
BPMS1
BPMS1BPMS1
BPMS1
 
Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...
Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...
Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...
 
Web development with ASP.NET Web API
Web development with ASP.NET Web APIWeb development with ASP.NET Web API
Web development with ASP.NET Web API
 
Nuxeo JavaOne 2007
Nuxeo JavaOne 2007Nuxeo JavaOne 2007
Nuxeo JavaOne 2007
 
What Is Alfresco
What Is AlfrescoWhat Is Alfresco
What Is Alfresco
 
BP-7 Share Customization Best Practices
BP-7 Share Customization Best PracticesBP-7 Share Customization Best Practices
BP-7 Share Customization Best Practices
 
Red Hat Open Day JBoss Fuse
Red Hat Open Day JBoss FuseRed Hat Open Day JBoss Fuse
Red Hat Open Day JBoss Fuse
 
Getting Started with CMIS
Getting Started with CMISGetting Started with CMIS
Getting Started with CMIS
 
Alfresco 5.0 Technology Review
Alfresco 5.0 Technology ReviewAlfresco 5.0 Technology Review
Alfresco 5.0 Technology Review
 

Similaire à Plutext Alfresco Tech Talk

Jax WS JAX RS and Java Web Apps with WSO2 Platform
Jax WS JAX RS and Java Web Apps with WSO2 PlatformJax WS JAX RS and Java Web Apps with WSO2 Platform
Jax WS JAX RS and Java Web Apps with WSO2 PlatformWSO2
 
Kann JavaScript elegant sein?
Kann JavaScript elegant sein?Kann JavaScript elegant sein?
Kann JavaScript elegant sein?jbandi
 
Optaros Surf Code Camp Introduction
Optaros Surf Code Camp IntroductionOptaros Surf Code Camp Introduction
Optaros Surf Code Camp IntroductionJeff Potts
 
SVG in Opera’s desktop, mobile & TV browsers — edition 2011
SVG in Opera’s desktop, mobile & TV browsers  — edition 2011SVG in Opera’s desktop, mobile & TV browsers  — edition 2011
SVG in Opera’s desktop, mobile & TV browsers — edition 2011Andreas Bovens
 
Is Enterprise Java Still Relevant (JavaOne 2015 session)
Is Enterprise Java Still Relevant (JavaOne 2015 session)Is Enterprise Java Still Relevant (JavaOne 2015 session)
Is Enterprise Java Still Relevant (JavaOne 2015 session)Ian Robinson
 
WSO2 Application Server - Product Overview
WSO2 Application Server - Product OverviewWSO2 Application Server - Product Overview
WSO2 Application Server - Product OverviewWSO2
 
Alfresco WCM For High Scalability
Alfresco WCM For High ScalabilityAlfresco WCM For High Scalability
Alfresco WCM For High ScalabilityAlfresco Software
 
REST - What's It All About? (SAP TechEd 2012, CD110)
REST - What's It All About? (SAP TechEd 2012, CD110)REST - What's It All About? (SAP TechEd 2012, CD110)
REST - What's It All About? (SAP TechEd 2012, CD110)Sascha Wenninger
 
Building Rich Applications with Appcelerator
Building Rich Applications with AppceleratorBuilding Rich Applications with Appcelerator
Building Rich Applications with AppceleratorMatt Raible
 
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected BusinessWSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected BusinessWSO2
 
Real-World Pulsar Architectural Patterns
Real-World Pulsar Architectural PatternsReal-World Pulsar Architectural Patterns
Real-World Pulsar Architectural PatternsDevin Bost
 
Decoupled web applications (with AppFabric)
Decoupled web applications (with AppFabric)Decoupled web applications (with AppFabric)
Decoupled web applications (with AppFabric)Studio Pešec
 
What's new in Nuxeo 5.2? - Solutions Linux 2009
What's new in Nuxeo 5.2? - Solutions Linux 2009What's new in Nuxeo 5.2? - Solutions Linux 2009
What's new in Nuxeo 5.2? - Solutions Linux 2009Stefane Fermigier
 
Advanced Container Management and Scheduling
Advanced Container Management and SchedulingAdvanced Container Management and Scheduling
Advanced Container Management and SchedulingAmazon Web Services
 
Jazoon2010 - Edgar Silva - Open source SOA on Steroids
Jazoon2010 - Edgar Silva - Open source SOA on SteroidsJazoon2010 - Edgar Silva - Open source SOA on Steroids
Jazoon2010 - Edgar Silva - Open source SOA on SteroidsEdgar Silva
 
N tier web applications
N tier web applicationsN tier web applications
N tier web applicationsMike Feltman
 

Similaire à Plutext Alfresco Tech Talk (20)

Jax WS JAX RS and Java Web Apps with WSO2 Platform
Jax WS JAX RS and Java Web Apps with WSO2 PlatformJax WS JAX RS and Java Web Apps with WSO2 Platform
Jax WS JAX RS and Java Web Apps with WSO2 Platform
 
Kann JavaScript elegant sein?
Kann JavaScript elegant sein?Kann JavaScript elegant sein?
Kann JavaScript elegant sein?
 
Optaros Surf Code Camp Introduction
Optaros Surf Code Camp IntroductionOptaros Surf Code Camp Introduction
Optaros Surf Code Camp Introduction
 
BPMS1
BPMS1BPMS1
BPMS1
 
SVG in Opera’s desktop, mobile & TV browsers — edition 2011
SVG in Opera’s desktop, mobile & TV browsers  — edition 2011SVG in Opera’s desktop, mobile & TV browsers  — edition 2011
SVG in Opera’s desktop, mobile & TV browsers — edition 2011
 
Is Enterprise Java Still Relevant (JavaOne 2015 session)
Is Enterprise Java Still Relevant (JavaOne 2015 session)Is Enterprise Java Still Relevant (JavaOne 2015 session)
Is Enterprise Java Still Relevant (JavaOne 2015 session)
 
WSO2 Application Server - Product Overview
WSO2 Application Server - Product OverviewWSO2 Application Server - Product Overview
WSO2 Application Server - Product Overview
 
Alfresco WCM For High Scalability
Alfresco WCM For High ScalabilityAlfresco WCM For High Scalability
Alfresco WCM For High Scalability
 
REST - What's It All About? (SAP TechEd 2012, CD110)
REST - What's It All About? (SAP TechEd 2012, CD110)REST - What's It All About? (SAP TechEd 2012, CD110)
REST - What's It All About? (SAP TechEd 2012, CD110)
 
Building Rich Applications with Appcelerator
Building Rich Applications with AppceleratorBuilding Rich Applications with Appcelerator
Building Rich Applications with Appcelerator
 
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected BusinessWSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
 
WSO2 AppDev platform
WSO2 AppDev platformWSO2 AppDev platform
WSO2 AppDev platform
 
Jax2010 adobe lcds
Jax2010 adobe lcdsJax2010 adobe lcds
Jax2010 adobe lcds
 
Real-World Pulsar Architectural Patterns
Real-World Pulsar Architectural PatternsReal-World Pulsar Architectural Patterns
Real-World Pulsar Architectural Patterns
 
Decoupled web applications (with AppFabric)
Decoupled web applications (with AppFabric)Decoupled web applications (with AppFabric)
Decoupled web applications (with AppFabric)
 
What's new in Nuxeo 5.2? - Solutions Linux 2009
What's new in Nuxeo 5.2? - Solutions Linux 2009What's new in Nuxeo 5.2? - Solutions Linux 2009
What's new in Nuxeo 5.2? - Solutions Linux 2009
 
Spring Mvc
Spring MvcSpring Mvc
Spring Mvc
 
Advanced Container Management and Scheduling
Advanced Container Management and SchedulingAdvanced Container Management and Scheduling
Advanced Container Management and Scheduling
 
Jazoon2010 - Edgar Silva - Open source SOA on Steroids
Jazoon2010 - Edgar Silva - Open source SOA on SteroidsJazoon2010 - Edgar Silva - Open source SOA on Steroids
Jazoon2010 - Edgar Silva - Open source SOA on Steroids
 
N tier web applications
N tier web applicationsN tier web applications
N tier web applications
 

Dernier

Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDecoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDhatriParmar
 
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...Nguyen Thanh Tu Collection
 
Multi Domain Alias In the Odoo 17 ERP Module
Multi Domain Alias In the Odoo 17 ERP ModuleMulti Domain Alias In the Odoo 17 ERP Module
Multi Domain Alias In the Odoo 17 ERP ModuleCeline George
 
Using Grammatical Signals Suitable to Patterns of Idea Development
Using Grammatical Signals Suitable to Patterns of Idea DevelopmentUsing Grammatical Signals Suitable to Patterns of Idea Development
Using Grammatical Signals Suitable to Patterns of Idea Developmentchesterberbo7
 
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxQ4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxlancelewisportillo
 
Oppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmOppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmStan Meyer
 
Measures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataMeasures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataBabyAnnMotar
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSMae Pangan
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptxmary850239
 
Active Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfActive Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfPatidar M
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operationalssuser3e220a
 
Narcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfNarcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfPrerana Jadhav
 
MS4 level being good citizen -imperative- (1) (1).pdf
MS4 level   being good citizen -imperative- (1) (1).pdfMS4 level   being good citizen -imperative- (1) (1).pdf
MS4 level being good citizen -imperative- (1) (1).pdfMr Bounab Samir
 
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptxDIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptxMichelleTuguinay1
 
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...DhatriParmar
 
week 1 cookery 8 fourth - quarter .pptx
week 1 cookery 8  fourth  -  quarter .pptxweek 1 cookery 8  fourth  -  quarter .pptx
week 1 cookery 8 fourth - quarter .pptxJonalynLegaspi2
 
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
Unraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptxUnraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptx
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptxDhatriParmar
 
4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptxmary850239
 

Dernier (20)

Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDecoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
 
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
 
Multi Domain Alias In the Odoo 17 ERP Module
Multi Domain Alias In the Odoo 17 ERP ModuleMulti Domain Alias In the Odoo 17 ERP Module
Multi Domain Alias In the Odoo 17 ERP Module
 
Using Grammatical Signals Suitable to Patterns of Idea Development
Using Grammatical Signals Suitable to Patterns of Idea DevelopmentUsing Grammatical Signals Suitable to Patterns of Idea Development
Using Grammatical Signals Suitable to Patterns of Idea Development
 
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxQ4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
 
Oppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmOppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and Film
 
Measures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataMeasures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped data
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHS
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx
 
Active Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfActive Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdf
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operational
 
Narcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfNarcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdf
 
MS4 level being good citizen -imperative- (1) (1).pdf
MS4 level   being good citizen -imperative- (1) (1).pdfMS4 level   being good citizen -imperative- (1) (1).pdf
MS4 level being good citizen -imperative- (1) (1).pdf
 
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptxDIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
 
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...
Beauty Amidst the Bytes_ Unearthing Unexpected Advantages of the Digital Wast...
 
week 1 cookery 8 fourth - quarter .pptx
week 1 cookery 8  fourth  -  quarter .pptxweek 1 cookery 8  fourth  -  quarter .pptx
week 1 cookery 8 fourth - quarter .pptx
 
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
Unraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptxUnraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptx
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
 
prashanth updated resume 2024 for Teaching Profession
prashanth updated resume 2024 for Teaching Professionprashanth updated resume 2024 for Teaching Profession
prashanth updated resume 2024 for Teaching Profession
 
4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx
 

Plutext Alfresco Tech Talk

  • 1. “Real time” collaboration inside a Word document using Alfresco Alfresco Tech Talk 26 June 2009 by Jason Harrop, Plutext
  • 2. Agenda • Part 1: Collaboration inside a Word document • Part 2: Inline editing
  • 3. About Plutext • We help organisations exploit their Word documents, outside the Microsoft silo (eg in Java, or sans SharePoint) • Core product: – Plutext collaboration in Word (on Alfresco) • Components: – docx4all – embeddable Java application/applet – docx4j open source project + = • Prototypes: – Alfresco inline docx editors – docx wiki (in Alfresco)
  • 5. The problem with Word today • It doesn’t matter how you try to open the document… – Choose offline editing in Alfresco Explorer (or Share) – Via CIFS or WebDAV (and with or without Alfresco’s Word Add-In) – Via the SharePoint API • Only one user can be in “the document” at any time • Fundamental limitation of Microsoft Word • .. so you get a proliferation of copies – the user’s working copy – copies made by users and collaborators • Which the document owner has to reconcile – Tedious, time consuming, and – Error prone • .. and which pollute your search index etc.
  • 7. Docx4all: cross platform docx editing, with collaboration.
  • 8. Under the hood Alfresco repository We bD AV WebDAV We bS erv ice .docx (unzipped) s Plutext AMP C# VSTO Word 2007 Add-In JCR Web SOAP Services AV bD We s vice b Ser We Java Swing App
  • 9. More demo etting up a document ontent controls heck in comments nvite users udit trail ecent changes ersion history
  • 10. Sweet spot? • High value documents (looming deadlines: even better) • Document written/edited by > 1 person, so merging copies is a pain • Using Alfresco 3.1 Enterprise or Labs 3d, or later • Most (not necessarily all) users on Word 2007
  • 11. Under the hood – future* Alfresco repository Sha rep Sharepoint We o in t API b Se rvi .docx (unzipped) ces Plutext CMIS AMP C# VSTO Word Add-In Web WebDAV Services AV W ebD s vice b Ser We P o r S ST P OA HTT RE Java Swing App Web browser * This page contains forward looking statements (which will probably largely pan out)
  • 13. Alfresco can give you a preview of a docx
  • 14. How did we do that? • Labs (current svn tip = r14939), with – OpenOffice 3.1 – pdf2swf • api/node/noderef/content/thumbnails/webpreview does what it should, as long as web-preview.js invokes it • need node.previews to include “webpreview” so Alfresco.WebPreview gets that value. (.. I just hard coded it in web-preview.get.html.ftl )
  • 15. .. however this is not inline editable • There are a number of solutions around for editing documents in the web browser, including: – Google Docs – Zoho • The problem with these is that: – On load (import), they convert your Office document to their own internal format, and – On save (export), they convert it back to the Microsoft format Result: two conversions; many documents will lose formatting or their “in- process” state. (This is why OpenOffice never displaced M$ Office) • Key Requirement: an inline editor’s native format needs to be Microsoft’s “Open XML” Office format – now an ISO standard. This is the only way to ensure nothing gets lost!
  • 16. At the SF meetup, I demo’d simple inline editing in the Explorer (JSF) client. This uses Javascript in the browser to manipulate the raw OpenXML DOM. See my post “HOW-TO add an inline editor” in the Alfresco forums for the steps needed to add an inline editor to Alfresco.
  • 17. Here is docx4all – our Swing app - performing the same role (running as an applet in the browser, and using WebDAV GET/PUT to load/save)
  • 18. Aside – alt-drag to liberate the applet!
  • 19. You can have a wiki of docx documents Ingredients: • Display docx inline in web browser • Edit inline • Hyperlinks: – Click to follow – Creating one (via the browser or Word) creates target docx (if nec) Why? • Knowledge workers can publish Office documents directly to the wiki, and edit them any conversions • Cut/paste wiki content into new documents, without loss of formatting • No need to learn new editing tools – Create/edit wiki pages in Word 2007 (or your web browser) • A single standard for corporate document formats – Open XML ISO standard documents
  • 20. Feedback please! Please let me know which bits you think would be most useful. jason@plutext.org Thanks! ------------------------- • Blog: http://dev.plutext.org/blog • Collaboration test drive: http://alpha.plutext.org/alfresco/register.html • Docx4j download, forums: http://dev.plutext.org/ • Docx4all: http://dev.plutext.org/trac/docx4all/wiki/Collaboration • Twitter: jasonharrop