Spring Roo and the Cloud Shekhar Gulati Xebia
Hi, my name is...Shekhar Gulati Work for Xebia India Spring enthusiast (these days   ) Blogger and Writer(JavaLobby and Developer.com) [email_address] Twitter : shekhargulati
Agenda Introducing Roo Demo for Unbelievers Under the Hood Capability areas (lots of demos) Cloud Portability Removing Roo Conclusion and Q&A
  Spring’s Mission #J2EE or JavaEE should be easier to use
Mission Accomplished ! Now What?
Spring Roo Development Tool
Spring Roo Mission Roo's mission is to fundamentally and sustainably improve Java developer productivity without compromising engineering integrity or flexibility
What is Roo? Rapid Development Tool for Spring Development time only No Runtime No Negative Performance Impact No Memory Overhead No Roo Deployment Uses Best of Breed Spring 3, Spring Security, Spring MVC / Web Flow Junit, Log4J, Maven, AspectJ, Eclipse
Why should we use Roo? Easy Configuration Great Learning Tool Spring Best Practices Restful Web Services, JPA persistence, Security, Integration tests, Selenium test cases, JMS Standards Bean validation, Dependency Injection Powerful Features GWT, SOLR, DBRE, NoSQL, Spring Integration (coming soon)
Demo for Unbelievers Demo # 1 – A Simple Web Application
Features Covered Project management Entity support Field Management Persistence JUnit testing Spring MVC Controllers, Selenium testing Logging
Under the Hood Implementation Overview Code Generation
Implementation Overview
Code Generation Approach Passive Generation Active Generation Roo is a Hybrid code generation
Active Generation
Demo # 2 Let’s Secure the app
Demo # 3 Speaker receive an Email
Demo # 4 IllegalAccess Notification
Demo # 5 Application speak Dutch
Demo # 6 How social is your app?
I have an existing Database schema
Cloud Portability
Changes to be made persistence setup gwt set up add aspects for key generation do mvn gwt:compile gae:deploy
Issues on Google App Engine Spring MVC app does not work Relationships does not work Integration tests does not work (ROO-1711)
Removing Roo from app Use AJDT's "push-in refactoring" feature This moves the Roo .aj content into normal .java files Remove Roo's annotation JAR from your POM dependency remove command Remove @Roo* annotations from .java files Regular expression (\n.*Roo.*\n) find/replace in eclipse
Features Not shown JSON SOLR Support (Search) Spring Web Flow Add-on creation Internationalization addon Simple addon Advanced addon
Future Sneak Peak Spring Integration support NoSQL support  ne04j redis
Resources & Links Home  http://www.springsource.org/roo/ Forum  http://forum.springsource.org Issues  http://jira.springframework.org/browse/ROO Twitter  @SpringRoo Twitter #roo hash key https://github.com/shekhargulati/spring-roo-playground
Q & A

Indic threads java10-spring-roo-and-the-cloud

  • 1.
    Spring Roo andthe Cloud Shekhar Gulati Xebia
  • 2.
    Hi, my nameis...Shekhar Gulati Work for Xebia India Spring enthusiast (these days  ) Blogger and Writer(JavaLobby and Developer.com) [email_address] Twitter : shekhargulati
  • 3.
    Agenda Introducing RooDemo for Unbelievers Under the Hood Capability areas (lots of demos) Cloud Portability Removing Roo Conclusion and Q&A
  • 4.
    Spring’sMission #J2EE or JavaEE should be easier to use
  • 5.
  • 6.
  • 7.
    Spring Roo MissionRoo's mission is to fundamentally and sustainably improve Java developer productivity without compromising engineering integrity or flexibility
  • 8.
    What is Roo?Rapid Development Tool for Spring Development time only No Runtime No Negative Performance Impact No Memory Overhead No Roo Deployment Uses Best of Breed Spring 3, Spring Security, Spring MVC / Web Flow Junit, Log4J, Maven, AspectJ, Eclipse
  • 9.
    Why should weuse Roo? Easy Configuration Great Learning Tool Spring Best Practices Restful Web Services, JPA persistence, Security, Integration tests, Selenium test cases, JMS Standards Bean validation, Dependency Injection Powerful Features GWT, SOLR, DBRE, NoSQL, Spring Integration (coming soon)
  • 10.
    Demo for UnbelieversDemo # 1 – A Simple Web Application
  • 11.
    Features Covered Projectmanagement Entity support Field Management Persistence JUnit testing Spring MVC Controllers, Selenium testing Logging
  • 12.
    Under the HoodImplementation Overview Code Generation
  • 13.
  • 14.
    Code Generation ApproachPassive Generation Active Generation Roo is a Hybrid code generation
  • 15.
  • 16.
    Demo # 2Let’s Secure the app
  • 17.
    Demo # 3Speaker receive an Email
  • 18.
    Demo # 4IllegalAccess Notification
  • 19.
    Demo # 5Application speak Dutch
  • 20.
    Demo # 6How social is your app?
  • 21.
    I have anexisting Database schema
  • 22.
  • 23.
    Changes to bemade persistence setup gwt set up add aspects for key generation do mvn gwt:compile gae:deploy
  • 24.
    Issues on GoogleApp Engine Spring MVC app does not work Relationships does not work Integration tests does not work (ROO-1711)
  • 25.
    Removing Roo fromapp Use AJDT's "push-in refactoring" feature This moves the Roo .aj content into normal .java files Remove Roo's annotation JAR from your POM dependency remove command Remove @Roo* annotations from .java files Regular expression (\n.*Roo.*\n) find/replace in eclipse
  • 26.
    Features Not shownJSON SOLR Support (Search) Spring Web Flow Add-on creation Internationalization addon Simple addon Advanced addon
  • 27.
    Future Sneak PeakSpring Integration support NoSQL support ne04j redis
  • 28.
    Resources & LinksHome http://www.springsource.org/roo/ Forum http://forum.springsource.org Issues http://jira.springframework.org/browse/ROO Twitter @SpringRoo Twitter #roo hash key https://github.com/shekhargulati/spring-roo-playground
  • 29.