Upcoming SlideShare
Loading in...5

Like this? Share it with your network



Uploaded on

Slides presented at the dojo.wine the 28th of March 2009 the dojo event organized by Uxebu.com and Hosted by Mayflower.de

Slides presented at the dojo.wine the 28th of March 2009 the dojo event organized by Uxebu.com and Hosted by Mayflower.de

More in: Technology , Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads


Total Views
On Slideshare
From Embeds
Number of Embeds



Embeds 4

http://www.linkedin.com 2
https://www.linkedin.com 2

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. The Dojo Tapestry5 integration library http://tapestry-jfly.sourceforge.net
  • 2. What's all about
    • Dojo – The most effective javascript framework
    • 3. Java – A standard for the big and medium sized industry
    • 4. Tapestry5 – A web framework that incorporates all the tools you need for the backend and frontend development
    • 5. Tapestry-JFly – An extension library that incorporates dojo into Tapestry5 in a fascinating natural way
  • 6. Dojo Advantages
    • Portability among all the browsers jungle
    • 7. A super rich widget set
    • 8. A shiny templating system
    • 9. Ease of use thanks to dojo.parser
    • 10. Available documentation with a lot of samples
    • 11. … yes it's fast!
  • 12. Java Advantages
    • Widely used in the big and medium sized industry
    • 13. Huge set of libraries, for nearly every needs
    • 14. Portability among OS, mostly without native libraries
    • 15. A powerful modern project management system (MAVEN)
    • 16. Nearly all you need is Open Source
  • 17. Tapestry Advantages
    • A dependency injection system that makes easy the availability of all services present in your application
    • 18. Component based (all components may provide their own assets, like css and js files)
    • 19. A templating system that allow a distinct separation between presentation and buisiness layers, so HTML like - NO jsp!
    • 20. Library of services, components and pages that may be directly injected into your application
  • 21. Tapestry-JFly advantages
    • Naturally integrates dojo into Tapestry5
    • 22. Ready to use
    • 23. No expressed need to force the programmer to include dojo.js
    • 24. No need to remember any dojo.include (tapestry-jfly components do it for you)
    • 25. All dojo/dijit/dojox public classes mapped into components
  • 26. Creating a Tapestry5 application
    • Creating a T5 “myapp” project
    • 27. mvn archetype:create -DarchetypeGroupId=org.apache.tapestry -DarchetypeArtifactId=quickstart -DgroupId=org.example -DartifactId=myapp -DpackageName=org.example.myapp -Dversion=1.0.0-SNAPSHOT
  • 28. Modifying the pom.xml
    • Adding tapestryjfly dependency
    <dependency> <groupId>net.sourceforge.tapestryjfly</groupId> <artifactId>dojotapestry5</artifactId> <version>1.2.3-rc1</version> </dependency>
    • Adding tapestryjfly repository
    <repository> <id>TapestryJFly_Release</id> <name>TapestryJFly Release Repository</name> <url>http://tapestryjfly.sourceforge.net/repository/</url> </repository>
  • 29. Enabling dojo
    • Use annotation @DojoInitialization for page classes
    • 30. Use annotation @DojoInitialization for a teamplate component, and add @Mixin private DojoWidget dojoWidget; as a template property
    • 31. You are ready to use TapestryJFly!!
  • 32. Using TapestryJFly components
    • As html elements
    <t:dojot5:dijit.form.button id=”foo” element=”button”> Click me </t:dojot5:dijit.form.button>
    • As html decorators
    <t:dojot5:dijit.form.form forId=”theForm” <t:form id=”theForm”>...</t:form> </t:dojot5:dijit.form.form>
    • For new custom dojo classes
    <t:dojot5:dojocomponent id=”foo” dojoType=”mylib.widget.Foo” dojoRequire=”mylib.widget.Foo”> Something inside </t:dojot5:dojocomponent>
  • 33. Ending
    • Questions?
    • 34. See it in action!
    • 35. Conclusions....