SlideShare a Scribd company logo
1 of 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

More Related Content

What's hot

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
 

What's hot (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
 

Similar to 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
 

Similar to 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
 

Recently uploaded

UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfNirmal Dwivedi
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17Celine George
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsMebane Rash
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxJisc
 
21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptxJoelynRubio1
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...Amil baba
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxDr. Ravikiran H M Gowda
 
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxPooja Bhuva
 
Philosophy of china and it's charactistics
Philosophy of china and it's charactisticsPhilosophy of china and it's charactistics
Philosophy of china and it's charactisticshameyhk98
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...pradhanghanshyam7136
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxRamakrishna Reddy Bijjam
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsKarakKing
 
OSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsOSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsSandeep D Chaudhary
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentationcamerronhm
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structuredhanjurrannsibayan2
 
Plant propagation: Sexual and Asexual propapagation.pptx
Plant propagation: Sexual and Asexual propapagation.pptxPlant propagation: Sexual and Asexual propapagation.pptx
Plant propagation: Sexual and Asexual propapagation.pptxUmeshTimilsina1
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxPooja Bhuva
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - Englishneillewis46
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxheathfieldcps1
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.MaryamAhmad92
 

Recently uploaded (20)

UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptx
 
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
 
Philosophy of china and it's charactistics
Philosophy of china and it's charactisticsPhilosophy of china and it's charactistics
Philosophy of china and it's charactistics
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
OSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsOSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & Systems
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
Plant propagation: Sexual and Asexual propapagation.pptx
Plant propagation: Sexual and Asexual propapagation.pptxPlant propagation: Sexual and Asexual propapagation.pptx
Plant propagation: Sexual and Asexual propapagation.pptx
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptx
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 

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