SlideShare una empresa de Scribd logo
1 de 45
Descargar para leer sin conexión
menttes




Integrando Plone con

cuAlquier
cosa

Roberto Allende
rallende@menttes.com
http://robertoallende.com
http://twitter.com/robertoallende
http://menttes.com
Ustedes
Operating System Wars



           Linux
Windows     Mac
          Windows
Plone OS Way



 Linux + Plone
  Mac + Plone
Windows + Plone
Text Editor Wars



              Vim
Windows      Emacs
             Eclipse
Plone text editor Way



  Vim + Plone
 Emacs + Plone
 Eclipse + Plone
Browser Wars


 Firefox
  Safari
  Opera
 Chrome
    IE
Plone Browser Way


Firefox + Plone
 Safari + Plone
 Opera + Plone
Chrome + Plone
   IE + Plone
Cómo integramos Plone
   con otras aplicaciones o tecnologías
 Windows
                    ?
Integrar Plone con
    cualquier cosa
Windows Matt Hamilton
    Carlos de la Guardia
Roberto Allende → (integrador)
Presentación


Model / Datos
   Windows
Caso 1: Moodle + .Net + Plone
           Windows




         Presentación
xdvtheme.inventions


             Deliverance / Collective.XDV


                                 Recusos Estaticos
     PLONE                         HTML / CSS
Pintandole los
labios al puerco
Dynamically re-skinning a
legacy .NET portal with python
Matt Hamilton
matth@netsight.co.uk
Introduction
   Dynamically re-skinning a .NET portal site
   Can't name the client
   Portal for teachers in the UK
   Aggregating content across legacy portal,
    Plone and Moodle
Existing Portal (1.0)

    Five years old by November 2009

    User registrations: 46,681

    Course enrolments: 33,664

    Resource Bank views: 247,911
Existing Portal (1.0)
Problems with Current Portal

    Look-and-feel
    →
        Not very compelling

    Usability
    →
        Challenging in places

    A poor content management system
    →
        Can't really edit general content, so use a separate FTP
        server and Dreamweaver

    Vendor lock-in
    →
        Even small changes, very expensive
The Future - Portal 2.0

    Usability, Design and Content Review April
    2008

    Strategic Review August 2008

    Feasibility Studies Jan 2009

    Pilot Demonstrator (“Portal V1.5”) March 2009
Design Review
Architecture Review

    Portal 1.0 - Monolithic, tightly coupled, poor
    separation of skin
Architecture Review

    Portal 2.0 - Extensible, loosely coupled, good
    separation of skin
How Do We Get There?
Remember: We Can't Touch the Existing System!
The Cunning Plan


             Browser


                               Portal 1.0


  Existing   Skin 1.0
   Portal               Module
                        of
                        function
                        ality
                        e.g.
                        portfoli
                        o
Total Skin Graft!
                               New skin
               Browser         via xpath
                                and xslt
                               transform
               web server
                                 ation.
   Skin 2.0   transformation
                                           Portal 1.5
                  proxy
                                 Web
                                server
                               needs to
                                handle
               Skin 1.0          SSL.

                               Together
                               they give
                                us nice
                                 URLs.
Deliverance

    Several Different Projects
    →
        xdv
    →
        Deliverance 0.3



             To learn more on specifics of Deliverance go to
                    http://deliverance.openplans.org
Result

    Old
    →
        70kb of HTML
    →
        120 Validation errors, 61 warnings

    New
    →
        40Kb of HTML
    →
        27 Errors, 1 warning (mainly xhtml/html conflicts)
    →
        No significant performance impact
Putting all together
                      Composite:main




    pipeline:portal   pipeline:plone   pipeline:moodl
                                              e
    theme.content      theme.content   theme.content
         xslt           navmerger        navmerger
      linkrewrite      plonecontent    moodlecontent
     htmlcleaner       source.plone    source.moodle
     source.portal
End Result   New Style




                Portal
                content
Caso 2: Coactivate
Coactivate: Plone
Coactivate: Wordpress
xdvtheme.inventions


<proxy path="/news" class="inner">
 <dest href="http://localhost:55000/VirtualHostBase/
 {wsgi.url_scheme}/{HTTP_HOST}/mysite/news/VirtualHostRoot" />
</proxy>
<rule class="inner" suppress-standard="1">
 <theme href="/static/inner.html" />
Caso 3: collective XDV
xdvtheme.inventions
xdvtheme.inventions
<rules xmlns="http://openplans.org/deliverance">
  <!-- title -->
  <replace content='/html/head/title'
           theme='/html/head/title' />
  <!-- content area -->
  <copy content='//*[@id="content"]'
        theme='//*[@id="leftcolumn"]' />
  <copy content='//*[@id="portal-globalnav"]'
      theme='//*[@id="links"]' />
   <!-- Portlets -->
  <copy content='//*[@id="portal-column-two"]'
       theme='//*[@id="rightcolumn"]' />
  <drop content='//*/dl/dd/a/img' />
</rules>
xdvtheme.inventions
xdvtheme.inventions
http://plone.org/products/xdvtheme.inventions/
Presentación    Deliverance

Model / Datos   ContentMirror
   Windows
Plone + salesforce ?
Plone + jython + java ?
Plone + ironpython ?
Plone + ironpython + mono ?
Muchas gracias

Roberto Allende
         menttes

    rallende@menttes.com
     http://robertoallende.com
http://twitter.com/robertoallende
      http://menttes.com

Más contenido relacionado

Destacado

Exwfylla 14 12 2010
Exwfylla 14 12 2010 Exwfylla 14 12 2010
Exwfylla 14 12 2010
ireportergr
 
Exwfylla 9 1 2010
Exwfylla 9 1 2010Exwfylla 9 1 2010
Exwfylla 9 1 2010
ireportergr
 
Beautiful photos
Beautiful photosBeautiful photos
Beautiful photos
ireportergr
 
Cd002745 Standard
Cd002745 StandardCd002745 Standard
Cd002745 Standard
ireportergr
 
Exwfylla 14 11 2010
Exwfylla 14 11 2010 Exwfylla 14 11 2010
Exwfylla 14 11 2010
ireportergr
 
Exwfylla 27 11 2010
Exwfylla 27 11 2010 Exwfylla 27 11 2010
Exwfylla 27 11 2010
ireportergr
 
Exwfylla 06 12 2010
Exwfylla 06 12 2010 Exwfylla 06 12 2010
Exwfylla 06 12 2010
ireportergr
 
Mnhmonio25211169
Mnhmonio25211169Mnhmonio25211169
Mnhmonio25211169
ireportergr
 
Exwfylla 02 12 2010
Exwfylla 02 12 2010 Exwfylla 02 12 2010
Exwfylla 02 12 2010
ireportergr
 
Exwfylla 31 8 2010
Exwfylla 31 8 2010 Exwfylla 31 8 2010
Exwfylla 31 8 2010
ireportergr
 
PerxBenefits Telehealth brochure
PerxBenefits Telehealth brochurePerxBenefits Telehealth brochure
PerxBenefits Telehealth brochure
weBranding
 
Exwfylla 26 10 2010
Exwfylla 26 10 2010 Exwfylla 26 10 2010
Exwfylla 26 10 2010
ireportergr
 
Exwfylla 3 01 2010
Exwfylla 3 01 2010 Exwfylla 3 01 2010
Exwfylla 3 01 2010
ireportergr
 
Exwfylla 07 10 2010
Exwfylla 07 10 2010 Exwfylla 07 10 2010
Exwfylla 07 10 2010
ireportergr
 

Destacado (20)

Exwfylla 14 12 2010
Exwfylla 14 12 2010 Exwfylla 14 12 2010
Exwfylla 14 12 2010
 
Mobile for Digital / Social Media experts
Mobile for Digital / Social Media expertsMobile for Digital / Social Media experts
Mobile for Digital / Social Media experts
 
A Primal-Dual Decomposition-Based Interior Point Approach to Two-Stage Stocha...
A Primal-Dual Decomposition-Based Interior Point Approach to Two-Stage Stocha...A Primal-Dual Decomposition-Based Interior Point Approach to Two-Stage Stocha...
A Primal-Dual Decomposition-Based Interior Point Approach to Two-Stage Stocha...
 
Exwfylla 9 1 2010
Exwfylla 9 1 2010Exwfylla 9 1 2010
Exwfylla 9 1 2010
 
Beautiful photos
Beautiful photosBeautiful photos
Beautiful photos
 
Cd002745 Standard
Cd002745 StandardCd002745 Standard
Cd002745 Standard
 
Sfh 1501
Sfh 1501Sfh 1501
Sfh 1501
 
Exwfylla 14 11 2010
Exwfylla 14 11 2010 Exwfylla 14 11 2010
Exwfylla 14 11 2010
 
Exwfylla 27 11 2010
Exwfylla 27 11 2010 Exwfylla 27 11 2010
Exwfylla 27 11 2010
 
Exwfylla 06 12 2010
Exwfylla 06 12 2010 Exwfylla 06 12 2010
Exwfylla 06 12 2010
 
Mnhmonio25211169
Mnhmonio25211169Mnhmonio25211169
Mnhmonio25211169
 
10 Years EUROPT
10 Years EUROPT10 Years EUROPT
10 Years EUROPT
 
Distinguishing Externalities and Internalization
Distinguishing Externalities and InternalizationDistinguishing Externalities and Internalization
Distinguishing Externalities and Internalization
 
Exwfylla 02 12 2010
Exwfylla 02 12 2010 Exwfylla 02 12 2010
Exwfylla 02 12 2010
 
The metric system
The metric systemThe metric system
The metric system
 
Exwfylla 31 8 2010
Exwfylla 31 8 2010 Exwfylla 31 8 2010
Exwfylla 31 8 2010
 
PerxBenefits Telehealth brochure
PerxBenefits Telehealth brochurePerxBenefits Telehealth brochure
PerxBenefits Telehealth brochure
 
Exwfylla 26 10 2010
Exwfylla 26 10 2010 Exwfylla 26 10 2010
Exwfylla 26 10 2010
 
Exwfylla 3 01 2010
Exwfylla 3 01 2010 Exwfylla 3 01 2010
Exwfylla 3 01 2010
 
Exwfylla 07 10 2010
Exwfylla 07 10 2010 Exwfylla 07 10 2010
Exwfylla 07 10 2010
 

Similar a Integrando Plone con cualquier cosa

Professional Frontend Engineering
Professional Frontend EngineeringProfessional Frontend Engineering
Professional Frontend Engineering
Cheton Wu
 
CRX Best practices
CRX Best practicesCRX Best practices
CRX Best practices
lisui0807
 
Is it time to start using HTML 5
Is it time to start using HTML 5Is it time to start using HTML 5
Is it time to start using HTML 5
Ravi Raj
 

Similar a Integrando Plone con cualquier cosa (20)

Lipstick on a Pig - European Plone Symposium 2009
Lipstick on a Pig - European Plone Symposium 2009Lipstick on a Pig - European Plone Symposium 2009
Lipstick on a Pig - European Plone Symposium 2009
 
Command & [e]Mission Control: Using Command and Event Buses to create a CQRS-...
Command & [e]Mission Control: Using Command and Event Buses to create a CQRS-...Command & [e]Mission Control: Using Command and Event Buses to create a CQRS-...
Command & [e]Mission Control: Using Command and Event Buses to create a CQRS-...
 
Websphere Portal
Websphere PortalWebsphere Portal
Websphere Portal
 
Html5 basics
Html5 basicsHtml5 basics
Html5 basics
 
HAXTheWeb @ Apereo 19
HAXTheWeb @ Apereo 19HAXTheWeb @ Apereo 19
HAXTheWeb @ Apereo 19
 
Shipping Applications to Production in Containers with Docker
Shipping Applications to Production in Containers with DockerShipping Applications to Production in Containers with Docker
Shipping Applications to Production in Containers with Docker
 
Interop 2018 - Understanding Kubernetes - Brian Gracely
Interop 2018 - Understanding Kubernetes - Brian GracelyInterop 2018 - Understanding Kubernetes - Brian Gracely
Interop 2018 - Understanding Kubernetes - Brian Gracely
 
Import golang; struct microservice
Import golang; struct microserviceImport golang; struct microservice
Import golang; struct microservice
 
Internals - Exploring the webOS Browser and JavaScript
Internals - Exploring the webOS Browser and JavaScriptInternals - Exploring the webOS Browser and JavaScript
Internals - Exploring the webOS Browser and JavaScript
 
Week 05 Web, App and Javascript_Brandon, S.H. Wu
Week 05 Web, App and Javascript_Brandon, S.H. WuWeek 05 Web, App and Javascript_Brandon, S.H. Wu
Week 05 Web, App and Javascript_Brandon, S.H. Wu
 
Professional Frontend Engineering
Professional Frontend EngineeringProfessional Frontend Engineering
Professional Frontend Engineering
 
전문가토크릴레이 1탄 html5 전망 (전종홍 박사)
전문가토크릴레이 1탄 html5 전망 (전종홍 박사)전문가토크릴레이 1탄 html5 전망 (전종홍 박사)
전문가토크릴레이 1탄 html5 전망 (전종홍 박사)
 
전문가 토크릴레이 1탄 html5 전망 (전종홍 박사)
전문가 토크릴레이 1탄 html5 전망 (전종홍 박사)전문가 토크릴레이 1탄 html5 전망 (전종홍 박사)
전문가 토크릴레이 1탄 html5 전망 (전종홍 박사)
 
CRX Best practices
CRX Best practicesCRX Best practices
CRX Best practices
 
01 web 2.0 - more than a pretty face for soa
01   web 2.0 - more than a pretty face for soa01   web 2.0 - more than a pretty face for soa
01 web 2.0 - more than a pretty face for soa
 
Bring drupal 8 to all in their native languages
Bring drupal 8 to all in their native languagesBring drupal 8 to all in their native languages
Bring drupal 8 to all in their native languages
 
Switch to Alfresco with Seed in Australia and New Zealand
Switch to Alfresco with Seed in Australia and New ZealandSwitch to Alfresco with Seed in Australia and New Zealand
Switch to Alfresco with Seed in Australia and New Zealand
 
Is it time to start using HTML 5
Is it time to start using HTML 5Is it time to start using HTML 5
Is it time to start using HTML 5
 
sidje
sidjesidje
sidje
 
HTML5 Intoduction for Web Developers
HTML5 Intoduction for Web DevelopersHTML5 Intoduction for Web Developers
HTML5 Intoduction for Web Developers
 

Más de menttes

Más de menttes (14)

Management para emprendimientos: Lean Startup
Management para emprendimientos: Lean Startup Management para emprendimientos: Lean Startup
Management para emprendimientos: Lean Startup
 
El estado de Plone
El estado de PloneEl estado de Plone
El estado de Plone
 
Construindo uma Intranet Corporativa utilizando Plone
Construindo uma Intranet Corporativa utilizando PloneConstruindo uma Intranet Corporativa utilizando Plone
Construindo uma Intranet Corporativa utilizando Plone
 
From copy to paster: A middle-class Plone developer tale
From copy to paster: A middle-class Plone developer taleFrom copy to paster: A middle-class Plone developer tale
From copy to paster: A middle-class Plone developer tale
 
Plone 3 Products Development Cookbook
Plone 3 Products Development CookbookPlone 3 Products Development Cookbook
Plone 3 Products Development Cookbook
 
CMS + CRM: Integrando Plone y Salesforce
CMS + CRM: Integrando Plone y SalesforceCMS + CRM: Integrando Plone y Salesforce
CMS + CRM: Integrando Plone y Salesforce
 
Plone 4 — what's up doc?
Plone 4 — what's up doc?Plone 4 — what's up doc?
Plone 4 — what's up doc?
 
Reusando componentes Zope fuera de Zope
Reusando componentes Zope fuera de ZopeReusando componentes Zope fuera de Zope
Reusando componentes Zope fuera de Zope
 
1001 formas de promover Python
1001 formas de promover Python1001 formas de promover Python
1001 formas de promover Python
 
Qué puede aprender Drupal de Plone
Qué puede aprender Drupal de PloneQué puede aprender Drupal de Plone
Qué puede aprender Drupal de Plone
 
Menttes: 5 años emprendiendo con Software Libre
Menttes: 5 años emprendiendo con Software LibreMenttes: 5 años emprendiendo con Software Libre
Menttes: 5 años emprendiendo con Software Libre
 
Intranets flexibles y escalables con Plone
Intranets flexibles y escalables con PloneIntranets flexibles y escalables con Plone
Intranets flexibles y escalables con Plone
 
Combinación ganadora: Plone como CMS, tu framework preferido como frontend
Combinación ganadora: Plone como CMS, tu framework preferido como frontendCombinación ganadora: Plone como CMS, tu framework preferido como frontend
Combinación ganadora: Plone como CMS, tu framework preferido como frontend
 
No me hagas pensar. Buenas Prácticas para desarrollar en la web
No me hagas pensar. Buenas Prácticas para desarrollar en la webNo me hagas pensar. Buenas Prácticas para desarrollar en la web
No me hagas pensar. Buenas Prácticas para desarrollar en la web
 

Último

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Último (20)

AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 

Integrando Plone con cualquier cosa