Discussions

Web tier: servlets, JSP, Web frameworks: Complex, Very Big and Very Dynamic UI - XForms

  1. Complex, Very Big and Very Dynamic UI - XForms (3 messages)

    Hi All,

    I am kicking off a project that aims to reimplement a J2EE application as it won't scale largely down to the number (2000+) of very large JSPs (many of which are about 500K in size).

    The app is characterised by a very rich UI currently implemented in JavaScript which is code generated, along with the JSPs, from metat data stored as generic tables in a database.

    We need to replicate this rich UI functionality but with the number of screens we have to reimplement, we are keen to investigate options of dynamically generating the JSPs from meta data (but not necessarily from the database).

    One option we are looking at is XForms but although it seems to fullfill the requirements from a functional point of view, I am hesitating as very few browsers (notably IE) do not support XForms. I am aware that there are plugins available but the app has a very large user base a large proportion of which is external to our enterprise. Requiring the installation of a plugin might not be acceptable.

    Does anyone have any experience of XForms in a similar environment and can they pass on any lessons learnt? Alternatively, can anyone suggest a flexible and dynamic UI framework. Not sure that AJAX would be flexible enough for us to implement dynamic JSPs without writing a complete framework which we don't want to do.

    Thank you in advance.



    Ged Roberts.
  2. Hi All,I am kicking off a project that aims to reimplement a J2EE application as it won't scale largely down to the number (2000+) of very large JSPs (many of which are about 500K in size).

    you should face size limitation for Java classes in the generated servlets

    Marina
    http://www.servletsuite.com
  3. A few questions:

    What do you mean by dynamic UI? Is this an interface based on
    1.) DHTML where interactivity with the user is of prime concern, such that users can navigate from one page to another and drag and drop things in say, a shopping cart and the like?

    or

    2.) do you mean that your UI is built from data stored in other media such as database, local files or other such source, and have that data populate elements such as dropdowns and radio buttons, and some content here and there?

    If it's the latter, then maybe you can have a look at Formular for java. It's a framework for building web forms in JSPs. I have not used XForms and therefore not sure how these two compare but I've had good experience with it.

    Formular for Java is found at http://formular.redeye.no
  4. Hi Aziz,

    Neither of those unfortunately. By dynamic, I mean that individual (html) controls, groups of controls or even entire pages can be hidden or disabled based on the evaluation of the state or value of another control.

    As another example, some fields are calculated based on the values entered in others, or depending on the value of a checkbox, the user could override the calculated value. I know we can do all of this with java script but that is what is being used now and in some cases there is so much javascript it can take 5 - 8 seconds for the javascript to execute (without roundtripping!).

    The real problem however is that because of the number of pages (2000 +) we want the pages to be generic (or generated on the fly) and this includes the dynamic aspects.

    As an example, coding each page by hand would take too long but we still want the ability for a check box to be able to remove a node from a navigation tree on the left hand side of the page without round tripping. AJAX might be the obvious choice here but I am not convinced AJAX is ready for large enterprise apps.

    In summary

    - too many pages to code by hand
    - complex interaction between controls often on different pages
    - calculation and validation on client (and so much that roundtripping isn't really viable without using something like AJAX - hence the XForms suggestion)

    Regards,



    Ged Roberts.