Best Practice with the Expresso Framework


News: Best Practice with the Expresso Framework

  1. Best Practice with the Expresso Framework (14 messages)

    An article by Peter Pilgrim that looks at the best practices of using one popular web application toolkit, Expresso Framework. The idea of using custom tags, JSP, and the MVC paradigm are suitable for such frameworks. He illustrates the best of practice through an on-line stock trading program example.

    Read Article Here

    Threaded Messages (14)

  2. Best Practice with the Expresso Framework[ Go to top ]

    Expresso release 4.0ea (early access version) now includes integration with Struts, one of several shared standards Expresso builds on. Struts is a thin MVC light weight framework and Expresso 4.0 a full application development framework which complements Struts with additional components for developing database-driven web applications. The early access version is available freely to registered users at:
  3. In this fast paced arena of technonology, where we have a less time of noticing the inception of a new technology then overridden by another one, there is no need of a framework. These are the following reasons that I could come up with.

    1. If developers follow frameworks, its tough for backward compatibility if the scope of the s/w is extended.
    2. The underlying base technologies over which the frameworks have been built , if changes or taken a detour, the frameworks is of no use.
    3. Moreover the arena of Client/Server is over, wherein you use the frameworks to achieve the most common stuff. But in this Web-Based comuting, applications designed are versatile in nature and they are really targeted for different purposes.
    4. Already we have a numerous quotes about performance issues regarding the usage of "Java" at server side, so the framework library (which sits on top of the traditional JAVA API's) is going to create much more performance problems, if the library is not properly designed.

  4. Penultimate because there are 4 or 5 competing ones, and only 1 will rise to be the ultimate. Kind of like Schlear Mellor, OMT, Booch all becoming UML.

    As for the worth of these frameworks, I agree they are way too much. They softcode everything you do, and they change too rapidly. Every project I have worked on does not require this, and the use of the framework would have extended the project timescales and added complexity (rather than hiding it).

    However, there are many folks out there who have never developed real projects, and these guys need some guides as to a good approach. Choose any framework and learn from it is often a good approach. By project 2 or 3 the framework will drop away as the team realise how to correctly approach the issues.

    My problem is I know how to develop code from the ground up, and all these frameworks add nothing.

  5. Why would one built the system from ground up if you can use a framework that implements 30% of your application while facilitating the conding of the rest?

    I agree that the technology is changing so fast that one needs another framework for each project. But that is another reason for using one. Would you code every one of your projects from scratch? Guess not, you use libraries and frameworks to move faster.

    The problem of changing versions and project directions over a framework is easily solved: use open source frameworks. If the framework goes in another direction, take it in your hands and THEN code it all. But at that time you will be much ahead that if you started from nothing.

    Would you bear coding binary search another time?

    Christian Rauh
  6. snip:
    Penultimate because there are 4 or 5 competing ones, and only 1 will rise to be the ultimate.

    Using relative size of listservs as a measure: Expresso and Struts are by FAR the most popular frameworks comprising an estimated 87%! And with Expresso 4.0 release due out in the next week (4.0ea is available now) - Expresso now integrates with Struts - so we think the combination of the two is the winning choice :). The idea is building on shared standards and working together.
  7. I would say that the pure Struts framework
    adds value to many web application projects.

    Sure you can implement your own MODEL VIEW
    CONTROLLER framework for each project.

    But this is what I disliked about C/C++
    originally circa 1991 they did not come
    with a free open source linked list library.

    Frameworks are sort of libraries of olde.
    You do not have to use them. But then
    you would be missing out, and why would
    would want to recreate a doubly linked list
    implementation in C++. Struts is successful
    because it is lightweight. Ties in
    the MVC idea and the COMMAND pattern
    from Gang of Four's book ( Gamma et al )
    brillaintly. It uses the VIEW HELP object
    design pattern through the use of
    custom action tags and JavaBeans to
    help you build a more lateral web application.
    Most importantly for developer. It actually
    works and cover many of the bases for most
    requirement rather than being too thin or
    narrow in its focus. It is also open source
    too which does help and has a popular
    socioligically friendly community.

    You also want to design and code at a
    higher abstraction level rather
    than the lower level Java Servlet level
    don't you?

    Peter Pilgrim

  8. Making Apple Pie[ Go to top ]

    Once, I came across a quote from some philosopher ( I don't remember who) which can justify the use of frameworks

      " If we were to make apple pie from scratch,
        we must invent the universe first "
  9. What is a framework? A framework is nothing more than a collection of classes. What is a object? Nothing more than a collection of functions?

    Since you're a real geek, why not elimnate frameworks and classes. You can do better right?

    So, you could do a better job of writing the java String class, so let's not use it. Why not throw out java.lang while your at it.

    Whats the operating system, nothing more than a collection of procedural librarys or object based frameworks. You could write a better one so, lets write a new os while were at it.

    The point is not could you write it better. The point is to take an existing tool that already works make a few changes to get to your first cut. Then find the 20% of the code that not sutied for whan you want and rewrite it.

    "Good programmers know what to write. Great ones know what to rewrite and reuse"

    -Eric Raymond

  10. The Value of Frameworks[ Go to top ]

    I'm somewhat astounded by this sentiment ... that frameworks are useless? Wow. Taken to extremes, that means we should still be programming in assembly code, or by flicking switches on the front panel.

    Designing a good, powerful, flexible framework is very hard, but doable. Frameworks can capture best practices and make them pervasive.

    Here's an example: Ever write a database driven application. All over that application will be code that pulls data from a database and writes into into the HTML.

    Now ... what goes into that database? Columns that include characters like '<', '>' and '&'? If you just used <%= %> or <% out.print(...) %> then your application is broken.

    You need a filter class, and you need to filter all your output through that class. That's your best practice. If you use a framework, such as Tapestry, then you get that for free.

    I don't know of an application so versatile that Tapestry, Expresso, Struts or any other framework is a *burden*. The only real question should be whether the benefits outweigh the burdens. Those burdens include studying documentation, coping with a learning curve, licensing issues (well, not for open-source!), etc.

  11. Sorry, but Struts is not a standard. Just my $0.02.
  12. Best Practice with the Expresso Framework[ Go to top ]

    If Expresso is the "penultimate" framework, which is the ultimate? Not interested in second best.
  13. As the author of this article.

    The publisher did not include the URL where you can
    download the complete source code bundle that goes
    with the article.

    The article is based on the Expresso Framework V3.11

    I can be reached by electronic-mail at

    "peterp at xenonsoft dot demon dot co dot uk"


    "peter dot pilgrim at db dot com"

    I apologise for the anti-spam format of these mailing addresses.

    And finally ...

    WTC Diasaster, Tuesday 11th September 2001

    I consider many Americans, Canadian to be great friends
    especially their musical influences on this world
    has been great is the last one hundred years.
    My thoughts go out to all families who lost their
    loved-ones in this outrageous attack on innocent
    human beings. You have my condolence from me
    and my family. My heart goes out to you all. Peace.

    Peter Pilgrim
    Senior Systems Analysts
    OTC Derivatives IT
    Deutsche Bank AG (UK)
    1-133 Houndsditch,
    London EC3A 7DX
    United Kingdom

    14 Sept 2001

    Source code bundle for the article can be found here:

    <b> </b>


    This is almost completely irrelevant but since people are making an issue of it and using the word incorrectly.

    The definition of penultimate

    pe·nul·ti·mate (p-nlt-mt)\ adj.
    1) Next to last.