SlideShare a Scribd company logo
µjax in 30
 minutes

                   lars.trieloff@day.com
      weblogs.goshaky.com/weblogs/lars
µjax in 30
 minutes
   JCR m
        eets
    AJAX




                            lars.trieloff@day.com
               weblogs.goshaky.com/weblogs/lars
Lars Trieloff
•   Product Manager at Day
•   Author, Blogger, Open
    Source Code
    •   Apache Cocoon
    •   Mindquarry
    •   Goshaky
    •   DAX
µjax
content repository vs. ajax
µjax
           content repository vs. ajax




What’s JCR (elevator pitch)
Introducing µjax
                           silve
                                 r
µjax
           content repository vs. ajax




What’s JCR (elevator pitch)
Introducing µjax
                           silve
                                 r
What’s JCR?
What’s JCR?

“The API should be a standard,
implementation independent, way
to access content bi-directionally
on a granular level to a
content repository.”
What’s JCR?

“The API should be a standard,
implementation independent, way
to access content bi-directionally
on a granular level to a
content repository.”
                   ?
What’s JCR?

“The API should be a standard,
implementation independent, way
to access content bi-directionally
on a granular level to a
content repository.”
                   ?
Best of both worlds.
   database      fi les yste m




        content repositor y
Best of both worlds.
                     database                fi les yste m
                                                     hier-
         integ                                     archi
              rity       structu
                                re                      es
                                       read                  streams


         tx             query        write         locking
                                                               access
                                                              control



multi-
value                                                                 g
              un-
                                                             versionin
           structured     “full-     sort        obser-
                          text”      order       vation

                                content repositor y
Some known JCR Applications
Some known JCR Applications


                                                                           Fast
                                                                        Enterprise
 BEA Portal                                    Oracle Portal Interface 21 Search
                 Sun         JBoss Portal
             OpenPortal                         Day             Spring
                                          Communique          Framework
                                               DAM                        Day
 magnolia WCMS                                                      Communique
                       Apache Sling
                                         Mindquarry                      Collab
             Alfresco ECMS
                                       Collaboration        Apache Tapestry
                  QSLabs                Day
 Apache        Compliance         Communiqué
 Cocoon                               WCMS                               IBM FileNet
                              Artifactory           medic-2-medic WebSiteManager
         Apache James       Maven Proxy            mapofmedicine
                        Exo
                   ECMS Platform              TYPO3
GX WebManager                                v5.0 WCM
                               InfoQ
                              Online                Hippo                    Liferay
           Nuxeo ECM       Community                CMS                Enterprise Portal
                                           Jahia                Sakai
    Percussion                         Framework             E-learning
    Rhythmix            QuickWCM                                      Sourcemix
                         WCMS                    Lutece              Sourcemix
                                                  Portal
µjax
           content repository vs. ajax




What’s JCR (elevator pitch)
Introducing µjax
                           silve
                                 r
µjax
         content repository vs. ajax




What’s JCR
Introducing µjax
µjax
         content repository vs. ajax




What’s JCR
Introducing µjax
                         silve
                               r
Introducing µjax




Repository based AJAX
Introducing µjax

       JCR
Introducing µjax

       JCR
Introducing µjax
              JCR
Introducing µjax
                     JCR




    the other side
Introducing µjax
                                                               JCR




                                              the other side
   de
     ve
    h a lope
       t r
                  “i want to build webapps”

         a rs )
me ( l
Introducing µjax
                                                               JCR




                                              the other side
   de
     ve
    h a lope
       t r
                  “i want to build webapps”

         a rs )
me ( l
Introducing µjax
                                                               JCR




                                              the other side
   de
     ve
    h a lope
       t r
                  “i want to build webapps”

         a rs )
me ( l
Introducing µjax
                                   JCR
   de
     ve
    h a lope
       t r



         a rs )
me ( l                   silve
                               r




                  µjax
Introducing µjax
                                         JCR
   de
     ve
    h a lope
       t r



         a rs )
me ( l                       silve
                                   r




                      µjax
                    very simple
                    projection:
                  fits the bill
Introducing µjax
                                                    JCR
   de
     ve
    h a lope
       t r



         a rs )
me ( l                       silve
                                   r




                      µjax
                    very simple
                    projection:        “usecas
                  fits the bill         driven
                                               e”
Introducing µjax
 I   browser & ujax.js
     reading: json & resource GET’s
     writing: form-POST & GET
                         s      s
                                                  J2EE Web
                                                   Server
                                          3
                                      2
Browser                     I
                                               2 UjaxServlet.java
                                                 translating requests
                                                  to JCR calls
                                               3 JCR Compliant
                                                  Content Repository
Introducing µjax
 I   browser & ujax.js
     reading: json & resource GET’s
     writing: form-POST & GET
                         s      s
                                                         J2EE Web
                                                          Server
                                                  3
                                              2
Browser                     I
                       very simple js A               2 UjaxServlet.java
                                                        translating requests
                      read content, FoPI to              to JCR calls
                                       rms
                        to write conten
                                        t             3 JCR Compliant
                                                         Content Repository
Introducing µjax
 I   browser & ujax.js
     reading: json & resource GET’s
     writing: form-POST & GET
                         s      s
                                                             J2EE Web
                                                              Server
                                                  3
                                              2       handles all the h
                                                       particularly se
                                                                       eavy lifting,
                                                                        curity
Browser                     I                                                     16 t
                                                                                      ons



                       very simple js A                 2 UjaxServlet.java
                                                          translating requests
                      read content, FoPI to                   to JCR calls
                                       rms
                        to write conten
                                        t              3 JCR Compliant
                                                              Content Repository
Getting ready...




download a
          nd install      test & mount as a drive
hello, world.

                                                                                      tle>
                                                                             world</ti
                                                                       ello,
                                                <html> itle>µjax:h
                                                         <t
                                                 <head>                     /h2>
                                                  </he ad>         o, world<
                                                          <h 2>hell
                                                   <body>
                                                           >
                                                    </body
                                                           >
                                                     </html


    drag, drop, done
http://localhost:7402/
                      firststeps/0_hello.htm
                                            l
simple write example
                                                                                                   tle>
                                                                                      examp le</ti
                                                                                write
                                                                       simple
                                                <html> itle>µjax:                           OSTquot;>
                                                 <hea d><t                           hod=quot;P
                                                               y>              aquot; met
                                                        d><bod ion=quot;/mydat
                                                  </hea m act
                                                         or              -->
                                                   
 <f <!-- title >                           equot; />
                                                                        /h2
                                                   
 
 <h2>Title< textquot; name            =quot;Titl
                                                                          =quot;
                                                    
 
 <input type ion -->
                                                                           pt                        ionquot;>
                                                    
 
 <!-- descri on</h2>                   script
                                                                            ti             quot;De
                                                     
 
 <h2>Descrip s=quot;5quot; name=
                                                                             ow
                                                     
 
 <textarea r
                                                      
 
                area>
                                                                   </text -->
                                                                       olor
                                                                 <!-- c r</h2>
                                                       
 
 <h2>Colo                  orquot;>
                                                                               e=quot;Col redquot;>red
                                                        
 
 <select nam alue=quot;
                                                                                 v              >green
                                                         
    
        <option lue=quot;greenquot;
                                                         
    
 
 <option va
                                                                    
                                                          
 
 </select>

          write me!
http://localhost:7402/firs
                          tsteps/1_write.html
                                                           
 
 rm>
                                                           
 </
                                                            </body
                                                                  fo
                                                                   >
                                                                    >
                                                             </html
simple read example
                                                                                                 title>
                                                                                           mple</
                                                                                    ad exa
                                                                          simple re
                                               <html> itle>µjax:
                                                        <t
                                                <head>
                                                 </head
                                                         >                             cript
                                                                            ax.jsquot;></s
                                                  <body> pt src=quot;/rj                                           +'quot;>';
                                                      <scr  i                                ataquot;); +node.Color
                                                                                      (quot;/myd         :'
                                                       <s cri pt>          getContent round-color
                                                                   =Ujax.          backg
                                                        va r node div style=quot;
                                                                 v='<            ;
                                                         var di .write(div)
                                                                  nt
                                                          docume >
                                                                   pt
                                                           </scri ript>                 Title)
                                                                                               ;
                                                               2><sc            e(node.
                                                      
 <h cument.writ
                                                                d o
                                                                        ></h2>                     ion);
                                                             </script t>                    script
                                                                       rip             de.De
                                                         
    <p><sc nt.write(no
                                                                   docume p>
                                                                       pt></
                                                               </scri
                                                                    div>
                                                           
 </
            read me!
http://localhost:7402/firs
                          tsteps/2_read.html
                                                            </body
                                                             </html
                                                                    >
                                                                     >
add new entry
                                                                                           itle>
                                                                                     ple</t
                                                                               y exam
                                                                        w entr
                                                                  add ne
                                           <html> itle>µjax:
                                                  <t
                                            <head> body>                        es/*quot;         taquot;>
                                                                          /entri art/form-da
                                                   ><              mydata         p
                                             </head m action=quot;/ type=quot;multi
                                                   or               nc
                                              
 <f od=quot;POSTquot; e
                                                  meth
                                                                                       lequot; />
                                                              tle </h2> quot; name=quot;Tit
                                                       <h2>Ti ype=quot;text
                                               
 
 <input t                                             tarea>
                                                                                                  ></tex
                                                
 
                           2>            ptionquot;
                                                                  cription</h ame=quot;Descri
                                                         <h2>Des rows=quot;5quot; n
                                                 
 
 <textarea
                                                 
 
                                                                       /h2>
                                                           <h2> Color< =quot;Colorquot;>
                                                                         e             red
                                                  
 
 <select nam alue=quot;redquot;> green
                                                                           v            quot;>
                                                   
 
 
 <option alue=quot;green
                                                                           v
                                                   
 
 
 <option
                                                    
 
 </select>
                                                    
 
                                      agequot;/>
             add new
http://localhost:7402/firststeps/3_addnew.html
                                                                      age</h2> equot; name=quot;Im
                                                               <h2>Im ype=quot;fil
                                                                <inp ut t
                                                                      nput t
                                                                             ype=quot;s
                                                                                   ubmitquot;
                                                                                         ></p>
                                                                   ><i
                                                       
   
 <p
                                                              form>
                                                       
 </
                                                       
                                                             >
                                                       </body
                                                              >
                                                        </html
list entries
                                                                                          itle>
                                                                                    ple</t
                                                                              s exam
                                                                  list entrie
                                         <html> itle>rjax:
                                                   t                                            squot;);
                                          <head><                                        /entrie
                                                                                   mydata
                                          [ ...]                            ent(quot;/
                                                                      etCont
                                           <s cript> ries=Ujax.g
                                                         t
                                                 var en
                                                     pt>
                                             </scri                                                                   quot;>');
                                                                                                                olor+'
                                              <div>                                                       ntry.C
                                                      t>              ries) {                      lor:'+e
                                               <scrip ar a in ent s[a];                      und-co
                                                                                       ackgro h3>');
                                                  for (v ntry=entrie iv style=quot;b le+'</
                                                
     var e .write('<d +entry.Tit
                                                              nt             >'            );
                                                       docume .write('<h2 Description
                                                               nt             y.
                                                        docume .write(entr
                                                                nt
                                                         docume
                                                                       ge) {
                                                                 ry.Ima
                                                          if(ent
                                                    [...] }
                                                                                  v>');
                                                                           ('</di
                                                                     .write

http://lo
         list entries
         calhost:7
                                                            document

                                                                                  </a>
                  402/first                         
 } >                   dd new
                           steps/4_l                        pt        tmlquot;>a
                                    ist.html        </scri quot;3_addnew.h
                                                             f=
                                                     <a hre
                                                      </div>
                                                              >
                                                       </body
                                                              >
                                                        </html
views
                                                 [...]
                                                        t>
                                                  <scrip wizard();
                                                      Ujax.
                                                          pt>
                                                   </scri
                                                    [...]




                                                                       rd();
                                                         ! Rja  x.w iza
                                                       !
                                                               ript>
resource or                                             ! </sc
http://l    iented urls
        ocalhost
                :7402/my
                        data/ent
                                ries.lis
                                        t.html
views
Dojo Integration




                er with less than 50 LOC
repository brows
µjax
         content repository vs. ajax




What’s JCR
Introducing µjax
µjax
         content repository vs. ajax




What’s JCR
Introducing µjax
                         silve
                               r
If you remember only 2 things.


I dev.day.com
  Download CRX and play with µjax.
2 keep an eye on “
                 apache sling”
If you remember only 2 things.


I dev.day.com
  Download CRX and play with µjax.
2 keep an eye on “
                 apache sling”
                                    riously!
                                  se

More Related Content

Similar to µjax in 30 minutes (for Stockholm)

Introducing JSR-283
Introducing JSR-283Introducing JSR-283
Introducing JSR-283
David Nuescheler
 
Web Content Management And Agile
Web Content Management And AgileWeb Content Management And Agile
Web Content Management And Agile
Valtech UK
 
Agile Edge Valtech
Agile Edge ValtechAgile Edge Valtech
Agile Edge Valtech
David Nuescheler
 
Bcp seminar 0713_handsout
Bcp seminar 0713_handsoutBcp seminar 0713_handsout
Bcp seminar 0713_handsout
Mizuki Eno Enomoto
 
Eb07 Day Communiqué Web Content Management En
Eb07 Day Communiqué Web Content Management EnEb07 Day Communiqué Web Content Management En
Eb07 Day Communiqué Web Content Management En
Valtech
 
Valtech Days 2009 Paris Presentation: WCM in 2010 and an intro to CQ5
Valtech Days 2009 Paris Presentation: WCM in 2010 and an intro to CQ5Valtech Days 2009 Paris Presentation: WCM in 2010 and an intro to CQ5
Valtech Days 2009 Paris Presentation: WCM in 2010 and an intro to CQ5
David Nuescheler
 
Practical Functional Javascript
Practical Functional JavascriptPractical Functional Javascript
Practical Functional Javascript
Oliver Steele
 
Wakanda: NoSQL & SSJS for Model-driven Web Applications - SourceDevCon 2012
Wakanda: NoSQL & SSJS for Model-driven Web Applications - SourceDevCon 2012Wakanda: NoSQL & SSJS for Model-driven Web Applications - SourceDevCon 2012
Wakanda: NoSQL & SSJS for Model-driven Web Applications - SourceDevCon 2012
Alexandre Morgaut
 
Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012
Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012
Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012Alexandre Morgaut
 
Ram chinta hug-20120922-v1
Ram chinta hug-20120922-v1Ram chinta hug-20120922-v1
Ram chinta hug-20120922-v1Ram Chinta
 
Lessons Learned Integrating Cocoon, Jackrabbit And Solr
Lessons Learned Integrating Cocoon, Jackrabbit And SolrLessons Learned Integrating Cocoon, Jackrabbit And Solr
Lessons Learned Integrating Cocoon, Jackrabbit And Solr
Lars Trieloff
 
Realtime collaboration with Clojure - EuroClojure - Barcelona, 2015
Realtime collaboration with Clojure - EuroClojure - Barcelona, 2015Realtime collaboration with Clojure - EuroClojure - Barcelona, 2015
Realtime collaboration with Clojure - EuroClojure - Barcelona, 2015
Leonardo Borges
 
Better Front-end Development in Atlassian Plugins
Better Front-end Development in Atlassian PluginsBetter Front-end Development in Atlassian Plugins
Better Front-end Development in Atlassian Plugins
Wojciech Seliga
 
Eclipse Gyrex OSGi based PaaS-Like Programming Stack - OSGi Cloud Workshop Ma...
Eclipse Gyrex OSGi based PaaS-Like Programming Stack - OSGi Cloud Workshop Ma...Eclipse Gyrex OSGi based PaaS-Like Programming Stack - OSGi Cloud Workshop Ma...
Eclipse Gyrex OSGi based PaaS-Like Programming Stack - OSGi Cloud Workshop Ma...
mfrancis
 
iForum 1004_handsout
iForum 1004_handsoutiForum 1004_handsout
iForum 1004_handsout
Mizuki Eno Enomoto
 
Everyday tools and tricks for scaling Node.js
Everyday tools and tricks for scaling Node.jsEveryday tools and tricks for scaling Node.js
Everyday tools and tricks for scaling Node.js
Nikolay Stoitsev
 
Ajax in AIR from On AIR Tour Europe
Ajax in AIR from On AIR Tour EuropeAjax in AIR from On AIR Tour Europe
Ajax in AIR from On AIR Tour Europe
AndreCharland
 
Laszlo PyCon 2005
Laszlo PyCon 2005Laszlo PyCon 2005
Laszlo PyCon 2005
Oliver Steele
 
.NET Architects Day - DNAD 2011
.NET Architects Day - DNAD 2011.NET Architects Day - DNAD 2011
.NET Architects Day - DNAD 2011
Fabio Akita
 
09 - Fábio Akita - Além do rails
09 - Fábio Akita - Além do rails09 - Fábio Akita - Além do rails
09 - Fábio Akita - Além do rails
DNAD
 

Similar to µjax in 30 minutes (for Stockholm) (20)

Introducing JSR-283
Introducing JSR-283Introducing JSR-283
Introducing JSR-283
 
Web Content Management And Agile
Web Content Management And AgileWeb Content Management And Agile
Web Content Management And Agile
 
Agile Edge Valtech
Agile Edge ValtechAgile Edge Valtech
Agile Edge Valtech
 
Bcp seminar 0713_handsout
Bcp seminar 0713_handsoutBcp seminar 0713_handsout
Bcp seminar 0713_handsout
 
Eb07 Day Communiqué Web Content Management En
Eb07 Day Communiqué Web Content Management EnEb07 Day Communiqué Web Content Management En
Eb07 Day Communiqué Web Content Management En
 
Valtech Days 2009 Paris Presentation: WCM in 2010 and an intro to CQ5
Valtech Days 2009 Paris Presentation: WCM in 2010 and an intro to CQ5Valtech Days 2009 Paris Presentation: WCM in 2010 and an intro to CQ5
Valtech Days 2009 Paris Presentation: WCM in 2010 and an intro to CQ5
 
Practical Functional Javascript
Practical Functional JavascriptPractical Functional Javascript
Practical Functional Javascript
 
Wakanda: NoSQL & SSJS for Model-driven Web Applications - SourceDevCon 2012
Wakanda: NoSQL & SSJS for Model-driven Web Applications - SourceDevCon 2012Wakanda: NoSQL & SSJS for Model-driven Web Applications - SourceDevCon 2012
Wakanda: NoSQL & SSJS for Model-driven Web Applications - SourceDevCon 2012
 
Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012
Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012
Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012
 
Ram chinta hug-20120922-v1
Ram chinta hug-20120922-v1Ram chinta hug-20120922-v1
Ram chinta hug-20120922-v1
 
Lessons Learned Integrating Cocoon, Jackrabbit And Solr
Lessons Learned Integrating Cocoon, Jackrabbit And SolrLessons Learned Integrating Cocoon, Jackrabbit And Solr
Lessons Learned Integrating Cocoon, Jackrabbit And Solr
 
Realtime collaboration with Clojure - EuroClojure - Barcelona, 2015
Realtime collaboration with Clojure - EuroClojure - Barcelona, 2015Realtime collaboration with Clojure - EuroClojure - Barcelona, 2015
Realtime collaboration with Clojure - EuroClojure - Barcelona, 2015
 
Better Front-end Development in Atlassian Plugins
Better Front-end Development in Atlassian PluginsBetter Front-end Development in Atlassian Plugins
Better Front-end Development in Atlassian Plugins
 
Eclipse Gyrex OSGi based PaaS-Like Programming Stack - OSGi Cloud Workshop Ma...
Eclipse Gyrex OSGi based PaaS-Like Programming Stack - OSGi Cloud Workshop Ma...Eclipse Gyrex OSGi based PaaS-Like Programming Stack - OSGi Cloud Workshop Ma...
Eclipse Gyrex OSGi based PaaS-Like Programming Stack - OSGi Cloud Workshop Ma...
 
iForum 1004_handsout
iForum 1004_handsoutiForum 1004_handsout
iForum 1004_handsout
 
Everyday tools and tricks for scaling Node.js
Everyday tools and tricks for scaling Node.jsEveryday tools and tricks for scaling Node.js
Everyday tools and tricks for scaling Node.js
 
Ajax in AIR from On AIR Tour Europe
Ajax in AIR from On AIR Tour EuropeAjax in AIR from On AIR Tour Europe
Ajax in AIR from On AIR Tour Europe
 
Laszlo PyCon 2005
Laszlo PyCon 2005Laszlo PyCon 2005
Laszlo PyCon 2005
 
.NET Architects Day - DNAD 2011
.NET Architects Day - DNAD 2011.NET Architects Day - DNAD 2011
.NET Architects Day - DNAD 2011
 
09 - Fábio Akita - Além do rails
09 - Fábio Akita - Além do rails09 - Fábio Akita - Além do rails
09 - Fábio Akita - Além do rails
 

More from Lars Trieloff

Putting the F in FaaS: Functional Compositional Patterns in a Serverless World
Putting the F in FaaS: Functional Compositional Patterns in a Serverless WorldPutting the F in FaaS: Functional Compositional Patterns in a Serverless World
Putting the F in FaaS: Functional Compositional Patterns in a Serverless World
Lars Trieloff
 
Serverless adventures with AWS Lambda and Clojure
Serverless adventures with AWS Lambda and ClojureServerless adventures with AWS Lambda and Clojure
Serverless adventures with AWS Lambda and Clojure
Lars Trieloff
 
Smartcon 2015 – Automated Decisions in the Supply Chain
Smartcon 2015 – Automated Decisions in the Supply ChainSmartcon 2015 – Automated Decisions in the Supply Chain
Smartcon 2015 – Automated Decisions in the Supply ChainLars Trieloff
 
Business Reasons for Predictive Applications
Business Reasons for Predictive ApplicationsBusiness Reasons for Predictive Applications
Business Reasons for Predictive Applications
Lars Trieloff
 
ADDD (Automated Data Driven Decisions) – How To Make it Work
ADDD (Automated Data Driven Decisions) – How To Make it WorkADDD (Automated Data Driven Decisions) – How To Make it Work
ADDD (Automated Data Driven Decisions) – How To Make it Work
Lars Trieloff
 
Automated decision making with predictive applications – Big Data Frankfurt
Automated decision making with predictive applications – Big Data FrankfurtAutomated decision making with predictive applications – Big Data Frankfurt
Automated decision making with predictive applications – Big Data Frankfurt
Lars Trieloff
 
Automated Decision making with Predictive Applications – Big Data Hamburg
Automated Decision making with Predictive Applications – Big Data HamburgAutomated Decision making with Predictive Applications – Big Data Hamburg
Automated Decision making with Predictive Applications – Big Data Hamburg
Lars Trieloff
 
Automated Decision Making with Predictive Applications – Big Data Düsseldorf
Automated Decision Making with Predictive Applications – Big Data DüsseldorfAutomated Decision Making with Predictive Applications – Big Data Düsseldorf
Automated Decision Making with Predictive Applications – Big Data Düsseldorf
Lars Trieloff
 
Automated decision making with predictive applications – Big Data Brussels
Automated decision making with predictive applications – Big Data BrusselsAutomated decision making with predictive applications – Big Data Brussels
Automated decision making with predictive applications – Big Data Brussels
Lars Trieloff
 
Automated decision making with predictive applications – Big Data Amsterdam
Automated decision making with predictive applications – Big Data AmsterdamAutomated decision making with predictive applications – Big Data Amsterdam
Automated decision making with predictive applications – Big Data Amsterdam
Lars Trieloff
 
Automated decision making using Predictive Applications – Big Data Paris
Automated decision making using Predictive Applications – Big Data ParisAutomated decision making using Predictive Applications – Big Data Paris
Automated decision making using Predictive Applications – Big Data Paris
Lars Trieloff
 
Automated decision making with big data – Big Data Vienna
Automated decision making with big data – Big Data ViennaAutomated decision making with big data – Big Data Vienna
Automated decision making with big data – Big Data Vienna
Lars Trieloff
 
Big Data Munich – Decision Automation and Big Data
Big Data Munich – Decision Automation and Big DataBig Data Munich – Decision Automation and Big Data
Big Data Munich – Decision Automation and Big Data
Lars Trieloff
 
10 Things I Learned About Pricing – Product Camp Berlin 2014
10 Things I Learned About Pricing – Product Camp Berlin 201410 Things I Learned About Pricing – Product Camp Berlin 2014
10 Things I Learned About Pricing – Product Camp Berlin 2014
Lars Trieloff
 
Big Data Berlin – Automating Decisions is the Next Frontier for Big Data
Big Data Berlin – Automating Decisions is the Next Frontier for Big DataBig Data Berlin – Automating Decisions is the Next Frontier for Big Data
Big Data Berlin – Automating Decisions is the Next Frontier for Big Data
Lars Trieloff
 
The DNA of Marketing
The DNA of MarketingThe DNA of Marketing
The DNA of Marketing
Lars Trieloff
 
Cross community campaigns with CQ5
Cross community campaigns with CQ5Cross community campaigns with CQ5
Cross community campaigns with CQ5
Lars Trieloff
 
Mastering the customer engagement ecosystem with CQ5
Mastering the customer engagement ecosystem with CQ5Mastering the customer engagement ecosystem with CQ5
Mastering the customer engagement ecosystem with CQ5Lars Trieloff
 
Web Forms 2.0
Web Forms 2.0Web Forms 2.0
Web Forms 2.0
Lars Trieloff
 
Advanced Collaboration And Beyond
Advanced Collaboration And BeyondAdvanced Collaboration And Beyond
Advanced Collaboration And Beyond
Lars Trieloff
 

More from Lars Trieloff (20)

Putting the F in FaaS: Functional Compositional Patterns in a Serverless World
Putting the F in FaaS: Functional Compositional Patterns in a Serverless WorldPutting the F in FaaS: Functional Compositional Patterns in a Serverless World
Putting the F in FaaS: Functional Compositional Patterns in a Serverless World
 
Serverless adventures with AWS Lambda and Clojure
Serverless adventures with AWS Lambda and ClojureServerless adventures with AWS Lambda and Clojure
Serverless adventures with AWS Lambda and Clojure
 
Smartcon 2015 – Automated Decisions in the Supply Chain
Smartcon 2015 – Automated Decisions in the Supply ChainSmartcon 2015 – Automated Decisions in the Supply Chain
Smartcon 2015 – Automated Decisions in the Supply Chain
 
Business Reasons for Predictive Applications
Business Reasons for Predictive ApplicationsBusiness Reasons for Predictive Applications
Business Reasons for Predictive Applications
 
ADDD (Automated Data Driven Decisions) – How To Make it Work
ADDD (Automated Data Driven Decisions) – How To Make it WorkADDD (Automated Data Driven Decisions) – How To Make it Work
ADDD (Automated Data Driven Decisions) – How To Make it Work
 
Automated decision making with predictive applications – Big Data Frankfurt
Automated decision making with predictive applications – Big Data FrankfurtAutomated decision making with predictive applications – Big Data Frankfurt
Automated decision making with predictive applications – Big Data Frankfurt
 
Automated Decision making with Predictive Applications – Big Data Hamburg
Automated Decision making with Predictive Applications – Big Data HamburgAutomated Decision making with Predictive Applications – Big Data Hamburg
Automated Decision making with Predictive Applications – Big Data Hamburg
 
Automated Decision Making with Predictive Applications – Big Data Düsseldorf
Automated Decision Making with Predictive Applications – Big Data DüsseldorfAutomated Decision Making with Predictive Applications – Big Data Düsseldorf
Automated Decision Making with Predictive Applications – Big Data Düsseldorf
 
Automated decision making with predictive applications – Big Data Brussels
Automated decision making with predictive applications – Big Data BrusselsAutomated decision making with predictive applications – Big Data Brussels
Automated decision making with predictive applications – Big Data Brussels
 
Automated decision making with predictive applications – Big Data Amsterdam
Automated decision making with predictive applications – Big Data AmsterdamAutomated decision making with predictive applications – Big Data Amsterdam
Automated decision making with predictive applications – Big Data Amsterdam
 
Automated decision making using Predictive Applications – Big Data Paris
Automated decision making using Predictive Applications – Big Data ParisAutomated decision making using Predictive Applications – Big Data Paris
Automated decision making using Predictive Applications – Big Data Paris
 
Automated decision making with big data – Big Data Vienna
Automated decision making with big data – Big Data ViennaAutomated decision making with big data – Big Data Vienna
Automated decision making with big data – Big Data Vienna
 
Big Data Munich – Decision Automation and Big Data
Big Data Munich – Decision Automation and Big DataBig Data Munich – Decision Automation and Big Data
Big Data Munich – Decision Automation and Big Data
 
10 Things I Learned About Pricing – Product Camp Berlin 2014
10 Things I Learned About Pricing – Product Camp Berlin 201410 Things I Learned About Pricing – Product Camp Berlin 2014
10 Things I Learned About Pricing – Product Camp Berlin 2014
 
Big Data Berlin – Automating Decisions is the Next Frontier for Big Data
Big Data Berlin – Automating Decisions is the Next Frontier for Big DataBig Data Berlin – Automating Decisions is the Next Frontier for Big Data
Big Data Berlin – Automating Decisions is the Next Frontier for Big Data
 
The DNA of Marketing
The DNA of MarketingThe DNA of Marketing
The DNA of Marketing
 
Cross community campaigns with CQ5
Cross community campaigns with CQ5Cross community campaigns with CQ5
Cross community campaigns with CQ5
 
Mastering the customer engagement ecosystem with CQ5
Mastering the customer engagement ecosystem with CQ5Mastering the customer engagement ecosystem with CQ5
Mastering the customer engagement ecosystem with CQ5
 
Web Forms 2.0
Web Forms 2.0Web Forms 2.0
Web Forms 2.0
 
Advanced Collaboration And Beyond
Advanced Collaboration And BeyondAdvanced Collaboration And Beyond
Advanced Collaboration And Beyond
 

Recently uploaded

The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 

Recently uploaded (20)

The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 

µjax in 30 minutes (for Stockholm)

  • 1. µjax in 30 minutes lars.trieloff@day.com weblogs.goshaky.com/weblogs/lars
  • 2. µjax in 30 minutes JCR m eets AJAX lars.trieloff@day.com weblogs.goshaky.com/weblogs/lars
  • 3. Lars Trieloff • Product Manager at Day • Author, Blogger, Open Source Code • Apache Cocoon • Mindquarry • Goshaky • DAX
  • 5. µjax content repository vs. ajax What’s JCR (elevator pitch) Introducing µjax silve r
  • 6. µjax content repository vs. ajax What’s JCR (elevator pitch) Introducing µjax silve r
  • 7.
  • 9. What’s JCR? “The API should be a standard, implementation independent, way to access content bi-directionally on a granular level to a content repository.”
  • 10. What’s JCR? “The API should be a standard, implementation independent, way to access content bi-directionally on a granular level to a content repository.” ?
  • 11. What’s JCR? “The API should be a standard, implementation independent, way to access content bi-directionally on a granular level to a content repository.” ?
  • 12. Best of both worlds. database fi les yste m content repositor y
  • 13. Best of both worlds. database fi les yste m hier- integ archi rity structu re es read streams tx query write locking access control multi- value g un- versionin structured “full- sort obser- text” order vation content repositor y
  • 14. Some known JCR Applications
  • 15. Some known JCR Applications Fast Enterprise BEA Portal Oracle Portal Interface 21 Search Sun JBoss Portal OpenPortal Day Spring Communique Framework DAM Day magnolia WCMS Communique Apache Sling Mindquarry Collab Alfresco ECMS Collaboration Apache Tapestry QSLabs Day Apache Compliance Communiqué Cocoon WCMS IBM FileNet Artifactory medic-2-medic WebSiteManager Apache James Maven Proxy mapofmedicine Exo ECMS Platform TYPO3 GX WebManager v5.0 WCM InfoQ Online Hippo Liferay Nuxeo ECM Community CMS Enterprise Portal Jahia Sakai Percussion Framework E-learning Rhythmix QuickWCM Sourcemix WCMS Lutece Sourcemix Portal
  • 16. µjax content repository vs. ajax What’s JCR (elevator pitch) Introducing µjax silve r
  • 17. µjax content repository vs. ajax What’s JCR Introducing µjax
  • 18. µjax content repository vs. ajax What’s JCR Introducing µjax silve r
  • 23. Introducing µjax JCR the other side
  • 24. Introducing µjax JCR the other side de ve h a lope t r “i want to build webapps” a rs ) me ( l
  • 25. Introducing µjax JCR the other side de ve h a lope t r “i want to build webapps” a rs ) me ( l
  • 26. Introducing µjax JCR the other side de ve h a lope t r “i want to build webapps” a rs ) me ( l
  • 27. Introducing µjax JCR de ve h a lope t r a rs ) me ( l silve r µjax
  • 28. Introducing µjax JCR de ve h a lope t r a rs ) me ( l silve r µjax very simple projection: fits the bill
  • 29. Introducing µjax JCR de ve h a lope t r a rs ) me ( l silve r µjax very simple projection: “usecas fits the bill driven e”
  • 30. Introducing µjax I browser & ujax.js reading: json & resource GET’s writing: form-POST & GET s s J2EE Web Server 3 2 Browser I 2 UjaxServlet.java translating requests to JCR calls 3 JCR Compliant Content Repository
  • 31. Introducing µjax I browser & ujax.js reading: json & resource GET’s writing: form-POST & GET s s J2EE Web Server 3 2 Browser I very simple js A 2 UjaxServlet.java translating requests read content, FoPI to to JCR calls rms to write conten t 3 JCR Compliant Content Repository
  • 32. Introducing µjax I browser & ujax.js reading: json & resource GET’s writing: form-POST & GET s s J2EE Web Server 3 2 handles all the h particularly se eavy lifting, curity Browser I 16 t ons very simple js A 2 UjaxServlet.java translating requests read content, FoPI to to JCR calls rms to write conten t 3 JCR Compliant Content Repository
  • 33. Getting ready... download a nd install test & mount as a drive
  • 34. hello, world. tle> world</ti ello, <html> itle>µjax:h <t <head> /h2> </he ad> o, world< <h 2>hell <body> > </body > </html drag, drop, done http://localhost:7402/ firststeps/0_hello.htm l
  • 35. simple write example tle> examp le</ti write simple <html> itle>µjax: OSTquot;> <hea d><t hod=quot;P y> aquot; met d><bod ion=quot;/mydat </hea m act or --> <f <!-- title > equot; /> /h2 <h2>Title< textquot; name =quot;Titl =quot; <input type ion --> pt ionquot;> <!-- descri on</h2> script ti quot;De <h2>Descrip s=quot;5quot; name= ow <textarea r area> </text --> olor <!-- c r</h2> <h2>Colo orquot;> e=quot;Col redquot;>red <select nam alue=quot; v >green <option lue=quot;greenquot; <option va </select> write me! http://localhost:7402/firs tsteps/1_write.html rm> </ </body fo > > </html
  • 36. simple read example title> mple</ ad exa simple re <html> itle>µjax: <t <head> </head > cript ax.jsquot;></s <body> pt src=quot;/rj +'quot;>'; <scr i ataquot;); +node.Color (quot;/myd :' <s cri pt> getContent round-color =Ujax. backg va r node div style=quot; v='< ; var di .write(div) nt docume > pt </scri ript> Title) ; 2><sc e(node. <h cument.writ d o ></h2> ion); </script t> script rip de.De <p><sc nt.write(no docume p> pt></ </scri div> </ read me! http://localhost:7402/firs tsteps/2_read.html </body </html > >
  • 37. add new entry itle> ple</t y exam w entr add ne <html> itle>µjax: <t <head> body> es/*quot; taquot;> /entri art/form-da >< mydata p </head m action=quot;/ type=quot;multi or nc <f od=quot;POSTquot; e meth lequot; /> tle </h2> quot; name=quot;Tit <h2>Ti ype=quot;text <input t tarea> ></tex 2> ptionquot; cription</h ame=quot;Descri <h2>Des rows=quot;5quot; n <textarea /h2> <h2> Color< =quot;Colorquot;> e red <select nam alue=quot;redquot;> green v quot;> <option alue=quot;green v <option </select> agequot;/> add new http://localhost:7402/firststeps/3_addnew.html age</h2> equot; name=quot;Im <h2>Im ype=quot;fil <inp ut t nput t ype=quot;s ubmitquot; ></p> ><i <p form> </ > </body > </html
  • 38. list entries itle> ple</t s exam list entrie <html> itle>rjax: t squot;); <head>< /entrie mydata [ ...] ent(quot;/ etCont <s cript> ries=Ujax.g t var en pt> </scri quot;>'); olor+' <div> ntry.C t> ries) { lor:'+e <scrip ar a in ent s[a]; und-co ackgro h3>'); for (v ntry=entrie iv style=quot;b le+'</ var e .write('<d +entry.Tit nt >' ); docume .write('<h2 Description nt y. docume .write(entr nt docume ge) { ry.Ima if(ent [...] } v>'); ('</di .write http://lo list entries calhost:7 document </a> 402/first } > dd new steps/4_l pt tmlquot;>a ist.html </scri quot;3_addnew.h f= <a hre </div> > </body > </html
  • 39. views [...] t> <scrip wizard(); Ujax. pt> </scri [...] rd(); ! Rja x.w iza ! ript> resource or ! </sc http://l iented urls ocalhost :7402/my data/ent ries.lis t.html
  • 40. views
  • 41. Dojo Integration er with less than 50 LOC repository brows
  • 42. µjax content repository vs. ajax What’s JCR Introducing µjax
  • 43. µjax content repository vs. ajax What’s JCR Introducing µjax silve r
  • 44. If you remember only 2 things. I dev.day.com Download CRX and play with µjax. 2 keep an eye on “ apache sling”
  • 45. If you remember only 2 things. I dev.day.com Download CRX and play with µjax. 2 keep an eye on “ apache sling” riously! se