201408 - Alfresco Tech Talk Live - Maven SDK 2.0

1,715 views
1,482 views

Published on

Rapid Alfresco Development with the Maven Alfresco SDK, with no web application reloading!

Published in: Technology
0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,715
On SlideShare
0
From Embeds
0
Number of Embeds
32
Actions
Shares
0
Downloads
32
Comments
0
Likes
6
Embeds 0
No embeds

No notes for slide
  • Christine: And finally a customer success engagement plan that starts upon customers signing with us and continues throughout their entire lifecycle with us. For our largest customers, this will starting with an internal account transition meeting designed to create awareness of the account, project plans, etc), followed quickly by a customer call to Introduce them to other Alfresco team members who are there to support them (Members of the Account team, including their CRM, TAM), Alfresco Support and key best practice guides, making them aware of notifications they will receive or have received, and our on-going commit to engage with them on a regular basis relative to their adoption of Alfresco. There is one purpose in our Success Plans and that’s customer loyalty and retention and on-going opportunities to sell more product and services.
  • Christine: And finally a customer success engagement plan that starts upon customers signing with us and continues throughout their entire lifecycle with us. For our largest customers, this will starting with an internal account transition meeting designed to create awareness of the account, project plans, etc), followed quickly by a customer call to Introduce them to other Alfresco team members who are there to support them (Members of the Account team, including their CRM, TAM), Alfresco Support and key best practice guides, making them aware of notifications they will receive or have received, and our on-going commit to engage with them on a regular basis relative to their adoption of Alfresco. There is one purpose in our Success Plans and that’s customer loyalty and retention and on-going opportunities to sell more product and services.
  • Teach them to fish :)
  • 201408 - Alfresco Tech Talk Live - Maven SDK 2.0

    1. 1. (Maven) Alfresco SDK 2.0 #noreload -> #nohassle Gabriele Columbro Ole Hejlskov
    2. 2. Objectives  State of the (Maven) nation  A sneak peek on the (Maven) Alfresco SDK 2.0!  Demo  Q/A
    3. 3. Disclaimer!  2.0.0-SNAPSHOT is a SNAPSHOT version!  Active development undergoing!  YMMV (Your Mileage May Vary)  MMMV (MY Mileage May Vary) :)  2.0.0-Beta-1 out later this week!
    4. 4. State of the (Maven) nation  Alfresco Build FULLY Mavenized!  Community 5.0.a out and release with Maven (Kudos to Sam!)  https://issues.alfresco.com/jira/browse/BDE-32 closed after 8 years!  No more config artifacts  Real POMs coming from a releases build  Surf back home :)  (Maven) Alfresco SDK  Migrated to Github at https://github.com/Alfresco/alfresco-sdk/  Huge community momentum (Kudos to Ole & Mao!)  Major developer ergonomics improvements with 2.x  (Old Java / Eclipse) SDK superceded and about to be EOL’d  Call it Alfresco SDK from now on!
    5. 5. The (Maven) Alfresco SDK 2.x  Target release: Summit 2014  Achievements (already in the latest SNAPSHOT):  Migration to Github —> Improved visibility. Fork us!  Added Share archetype  MAJOR rapid application development features (hot code reloading) using spring- loaded (free!)  Seamless IDE integration with Eclipse / IDEA  Zero reloading development!  Remote Junit ported to the new approach
    6. 6. The (Maven) Alfresco SDK 2.x  Additional key features (still to be added):  Must: Availability on Maven Central!  Must: Integration of the Alfresco Technical Validation Tool  Must: Alignment with samples at https://github.com/Alfresco/alfresco-sdk-samples/  Should: RM rapid dev archetypes  Should: Community & Enterprise profiles  Should: General bugfixing (see filter)  Could: Mock webscript testing integration  Could: Use of a webscript instead of embedded Jetty for remote Junit running
    7. 7. Sure, but what changes?  Really very little, from a user standpoint  Key profiles are kept for backwards compatibility  On AMP projects: -Pamp-to-war  On AIO (TBC) projects: -Prun  JRebel (deprecated) support incapsulated in an optional (non supported) profile -Pjrebel
    8. 8. Is this reloading really hot?  I will let you judge about that :)  Currently hot reloading (with no long webapp context reload):  Java Classes  Test classes (for remote Junit running)  Webscripts (Java, Javascripts, FTL)  Web Resources (JS, CSS, JSP, etc.)  Classpath config files  What is NOT reloaded:  Spring Context (need restart upon Spring config changes)
    9. 9. Demo Repo  Rapid Repository AMP Development On Eclipse Luna  Pre-requisites:  Maven 3.2.2  Eclipse Luna latest build  Story board:  Create empty AMP  Show testing  Add webscript / modify it  Profit :)  Command line: MAVEN_OPTS="-Xms1024m -Xmx2048m -XX:PermSize=1024m - javagent:/Users/gabrielecolumbro/Downloads/springloaded -1.2.0.RELEASE.jar -noverify" mvn clean install -Pamp-to-war
    10. 10. How did we achieve that?  A magic combo of:  spring-loaded (library for classpath resources reloading)  Tomcat7 context.xml configuration and virtualWebapp features  Advantages?  IDE independent  Free  Wait time for class changes … 0s! Just refresh!  Wait time for running tests … 0s! No app context startup time with remote Junit running!
    11. 11. Demo Share  Rapid Share AMP Development On IDEA  Pre-requisites:  Maven 3.2.2  IDEA ???  Story board:  Create empty AMP  Show how to connect to repo running (alf.repo.url)  Show Aikau example  Add webscript / modify it  Profit :)
    12. 12. Resources  Project: https://github.com/Alfresco/alfresco-sdk/  Issues: https://github.com/Alfresco/alfresco-sdk/issues  Mailing list: https://groups.google.com/forum/#!forum/maven- alfresco  Download spring-loaded from http://search.maven.org/remotecontent?filepath=org/springframe work/springloaded/1.2.0.RELEASE/springloaded- 1.2.0.RELEASE.jar  To have the demo’ed features, use the latest 2.0.0-SNAPSHOT SDK from: mvn archetype:generate - DarchetypeCatalog=https://artifacts.alfresco.com/nexus/con tent/repositories/public-snapshots/archetype-catalog.xml
    13. 13. Q/A
    14. 14. Thanks!

    ×