Results 1 to 8 of 8

Thread: Video Tutorial for creating Spring Roo Advanced Addons

  1. #1
    Join Date
    Nov 2010
    Location
    2k/10, Aditya Garden City, Warje, Pune-411052, India
    Posts
    22

    Smile Video Tutorial for creating Spring Roo Advanced Addons

    Hi All,
    I have created some videos which explains how to create, package, install and run Spring Roo Advanced Add on. The same video show has a short code walk through explaining the code of Advanced Addon.

    http://www.youtube.com/user/rohitssghatol?feature=mhum

    I plan to put couple of more videos for the addons I am creating myself. One being a security addon which does database based security, register, email etc.

    Cheers,
    Rohit

  2. #2
    Join Date
    Aug 2006
    Location
    Arequipa-Peru / South America
    Posts
    2,796

    Default

    Hello Rohit

    Thanks for share your knowledge, it is useful for everybody!!!!

    My Best Regards
    - Manuel Jordan

    Kill Your Pride, Share Your Knowledge With All
    The Fear Of The LORD Is The Beginning Of Knowledge, But Fools Despise Wisdom And Discipline. Proverbs 1:7

    Blog


    Technical Reviewer of Apress

    • Pro SpringSource dm Server
    • Spring Enterprise Recipes: A Problem-Solution Approach
    • Spring Recipes: A Problem-Solution Approach, 2nd Edition
    • Pro Spring Integration
    • Pro Spring Batch
    • Pro Spring 3
    • Pro Spring MVC: With Web Flow
    • Pro Spring Security

  3. #3
    Join Date
    Dec 2007
    Location
    Stockholm, Sweden
    Posts
    190

    Default

    Thank you for sharing, can you share more about your security addon, its complete features, where it is being published (github, google code, sf.net?)

    I have been working on one too, but so far its mostly been about the end result code (and not how Addon specific stuff) so haven't published any thing.
    Shahzada Hatim
    @geoaxis/twitter
    http://hatimonline.com

  4. #4
    Join Date
    Nov 2010
    Location
    2k/10, Aditya Garden City, Warje, Pune-411052, India
    Posts
    22

    Default

    Hi,
    Here is the complete feature set for my security addon

    1. Use Entity classes for User, Role and UserRole
    2. Change to Database Authentication Provider in applicationContext-security.xml
    3. Put in Forgot Password
    4. Put in User Registration with captcha
    5. Put in User Activation
    6. Put in Password encryption
    7. Put in Change Password and may be Change Profile as well.

    Sorry, so far I haven't uploaded the code anywhere. I have kindda finished on top 2 items for the addons.

    Cheers,
    Rohit

  5. #5
    Join Date
    Nov 2010
    Location
    2k/10, Aditya Garden City, Warje, Pune-411052, India
    Posts
    22

    Default

    Hi Everyone,
    Sorry for the spam, but in my earlier link my first tutorial link wasn't appearing, so posting all the youtube video links here

    1. Part 1 - http://www.youtube.com/watch?v=iw4acBcKJkA
    2. Part 2 - http://www.youtube.com/watch?v=ey7RkNX35-M
    3. Part 3 - http://www.youtube.com/watch?v=ndi_TlNl65s
    4. Part 4 - http://www.youtube.com/watch?v=mJH_cDO6u9o

    Cheers,
    Rohit

  6. #6
    Join Date
    Dec 2007
    Location
    Stockholm, Sweden
    Posts
    190

    Default

    @rohitghatol

    ->features , neat stuff. I wonder how you wish to handle email messages. I looked into using spring integration email support, which it's self could be abstracted as a plugin. (I wonder how could one plugin use another plugin to avoid duplication of functionality)

    There is a nice writeup by gordondickens (on of the spring ROO in action authors)
    http://gordondickens.com/wordpress/2...g-integration/

    My initial interest was centered around ACL. I have had to come up with more than a few applications which required ACL setup in the past few months, and I strongly felt that an ACL recipe with ROO could save lots of time for lots of people
    Shahzada Hatim
    @geoaxis/twitter
    http://hatimonline.com

  7. #7
    Join Date
    Nov 2010
    Location
    2k/10, Aditya Garden City, Warje, Pune-411052, India
    Posts
    22

    Default

    Hi Hatim,

    This is actually very easy, I use

    @Reference Shell shell;

    in my Operations class

    then I just say

    shell.executeCommand("entity --class ~.model.WebUser --testAutomatically");


    I was advised against this, just because if the dependent plugin changes, the code breaks. However, I am using all Roo basic addons, so it safe.

    For email I just use
    shell.executeCommand("email sender setup --hostServer ....");


    Also, I was studying GWT Addon as its pretty big and complex, and I want to create an addon of the same complexity. This is what I understand so far.

    1. When we develop addon there is
    a. Managed Code (or Active Generation code), which has to get updated if the code it depends on (e.g a Entity) changes. This require quite a lot of work
    b. There is a unManaged Code (or Passive Generation code), which ones generated, is not required to be maintained.

    2. For Managed code like entities and its controller, I simply choose to use shell.executeCommand() to basic spring roo addon do Active Generation. However, soon I will have to jump in and write code which does active generation of some of my classes from Entity classes.

    3. For Passive Generation, I looked up GWT Addon. They simply store lot of class files as XYZ-template.java. These files had code as follows

    package __TOP_LEVEL_PACKAGE__
    import ...
    import __TOP_LEVEL_PACKAGE__.__SEGMENT_LEVEL_PACKAGE__.ab c;

    public class XYZ{

    ...
    }

    They simply copy these code using FileCopyUtils and while copying they find replace __TOP_LEVEL_PACKAGE__ with actual package.
    I think this is fair enough for passive code generation (as active code generation is lot of effort, not saying they don't have ready made code for this, but effort is great).

    4. When it comes to modifying XML files, its lot more easier than both Active or Passive Code Generation, you simply use XMLUtils along with standard w3c DOM manipulation using Nodes, Elements.


    Cheers,
    Rohit


    Cheers,
    Rohit

  8. #8

    Default

    I'm new in Roo and I want to play a little bit with advanced addons in the future. I understand from examples that with ClassOrInterfaceTypeDetailsBuilder i can create new java classes, but how can i create packages for my souces like in controller all command.May be it's a stupid question, but i'm a little bit confused right now about this detail

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •