facebook

Post scaffolding processing

  1. MyEclipse IDE
  2.  > 
  3. Spring Development
Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #310507 Reply

    Greg Soulsby
    Member

    Love the whole MyEclipse story, well done.

    Now I have my first scaffolded app running I am looking at the development of more apps, and maintenance strategy. Would like to bring the same rigor to both as you give me with the scaffolding process.

    I would like to maximise tailoring programmatically / systematically.

    For some requirements I could change the templates used in the scaffolding? Another approach would be apply changes using Aspects, right?

    As a beginner in MyEclispe, Spring and Aspects I am afraid of breaking something.

    Do you have any advice for these use case examples?

    1) Link to our css and javascript files, not the default ones
    2) Create web page layouts to our format
    3) Add methods that empty / drop / dump the table to all DAO class
    4) Add a method that creates the table to all DAO class
    5) Replace the implimentation of a method with one of our own

    #310520 Reply

    davemeurer
    Member

    Hello,
    Thanks for the kind words!

    For some requirements I could change the templates used in the scaffolding?

    Correct. Extending the templates used in the MyEclipse for Spring generation can actually be done today in version 8.6. It does require building an Eclipse plugin, and we are not sure whether people are ready to take on that kind of challenge. So, we are working on a more optimal solution and gathering feedback on the types of extensions people would like to build – one that we’ve heard a lot about is the web layer. Let me know if you have other ideas.

    I can offer a document we’ve created that describes the steps involved in creating an Eclipse plug-in project and extending the generation templates. If you are interested in that document, please PM or email me at dmeurer [at] skywaysoftware [dot] com

    Another approach would be apply changes using Aspects, right?

    Yes, however I’m not sure that is the best practice. What we usually see is folks using scaffolding, and then manually modifying the code to their specific needs. Version 8.6 also introduces our first version of Code Assistants, which provides help with Spring and JAX-WS annotations. You can see more with our Spring Annotator Code Assistants Tutorial, or Code Assistants Video.

    1) Link to our css and javascript files, not the default ones
    2) Create web page layouts to our format

    Currently, there are several approaches that we’ve seen our users do here. Again, we are looking into making it easier for folks to extend our generation engine so something like this can be easier in the product.
    One thing to mention that isn’t apparent the first time you scaffold is that any changes in the styles.css or sitemesh files can be preserved the second time you scaffold, and that’s controlled via checkboxs in the scaffolding wizard that you will only see after multiple scaffolds. You can see this in action in the Rescaffolding video. A tutorial and details in a document should be published soon.

    3) Add methods that empty / drop / dump the table to all DAO class
    4) Add a method that creates the table to all DAO class
    5) Replace the implimentation of a method with one of our own

    I would consider all these to be part of the java code, which contains some preservation technology so rescaffolding won’t affect new methods. Now, to include these methods a part of the scaffolding engine every time you start a new project or rescaffold is yet another type of extension that can be done today through eclipse plugin development and what we are evaluating to make easier for future releases.

    Let us know what you think.

    Kind regards,
    Dave

    #310528 Reply

    Greg Soulsby
    Member

    Thanks of the reply. I will definatly work towards the plugins.

    Another approach would be apply changes using Aspects, right?
    Yes, however I’m not sure that is the best practice

    What are some of the issues? For something like error handling, its got to be fine. But say I wanted to inject a single method in one class, could I not code the method in a class I might call “apendium”, inject it into the target class using a pointcut and then when I build / rebuild apps just include “apendium” class and the aspect code? What problem can you see?

    #310555 Reply

    davemeurer
    Member

    No problems, it should work fine. Sorry if my response insinuated there would be issues. I’ve just usually seen the Aspects approach for cross-cutting concerns.

Viewing 4 posts - 1 through 4 (of 4 total)
Reply To: Post scaffolding processing

You must be logged in to post in the forum log in