I believe the following free tool running on any servlet engine will help to expedite the web development that involve the following technologies: 1. jsp 2. relational database 3. stored procedures 4. EJB session beans 5. XML/XSL Tool Name: ************ Aspire Availability/cost: ***************** free for commercial/non-commercial use with a limited license as posted on the web site http://www.activeintellect.com/aspire. Support ********* [EMAIL PROTECTED] Documentation ***************** http://www.activeintellect.com/aspire What can Aspire do for my web development under J2EE environment ************************************************************************* 0. An excellent add on to Tomcat for rapidly developing J2EE applications 1. Exposes the relational data by combining multiple sqls/stored procedures/java objects either as an xml data stream or a java tree to either XSL or JSP. 2. As a result programmers only focus on the painting logic of the page via jsp. As this logic only comprises of assignment/if-else/for, you can teach this process to almost any one on the team. 3. Provides an excellent mechanism for combining the output of such tools as FrontPage directly to the databases declaratively (no programming) via JSP 4. You can retrieve the data either as csv, html or xml 5. You can employ multiple transformations: JSP/tags/XSL/Or_Your_own 6. On the update side allows direct access to stored procedures or sql or java objects or EJBs. Depending on the exceptions it can reroute to the appropriate page 7. Provides login/session management out of the box or allows you to plugin to your own security via few lines of java code 8. Provides any member of your team to become productive with the most basic java and there by providing gradual training ground for java programmers 9. Takes care of all of the database access needs via connection pools. Allows you plug in your own connection pool mechanism if you have one 10. Due to it's xml capabilities you can use it as a java library that can convert relational data to xml data declaratively If you are curious please try it out and post any questions to [EMAIL PROTECTED] For JSP programmer Aspire offers ************************************* 1. An opportunity to declaratively define data needs, minimizing the coding necessary on the middle tier 2. No jdbc programming necessary 3. Access to multiple data sources as a single hierarchical data sets, either in xml or java tree 4. Focus on application logic and page design 5. Transactionally aware database updates using jdbc, similar to EJBs 6. An excellent transformation library that allows you to choose your transformation For Database programmers Aspire offers ******************************************* 1. Ability to develop all of your web site using stored procedures and front end tools. Minimum, if not none, java 2. Ability to do this in a J2EE confirmant manner that allows for app server migration 3. All business logic in stored procedures 4. Import/Export utilities that allows for importing and exporting of data in multiple formats such as text and xml For XSL aware programmers Aspire offers ********************************************** 1. Ability to convert relational data to xml 2. Ability to use xalan to convert the resulting xml to html or further processed xml for b2b For Managers Aspire offers ***************************** 1. Considerabley faster time to market 2. Ability to use every member of your team (irrepective of their java experience) in the development process 3. Well tested and architecturally sound rapid environment for developing J2EE applications An Aspire example ********************** 1. Exposes the relational data by combining multiple sqls/stored procedures/java objects either as an xml data stream or a java tree to either XSL or JSP. Here is an example of how Aspire exposes, the data declaratively to a jsp page and how that page is accessed via the web browser. // Identify a jsp page MyFirstPageURL.template=/myapp/myFirstPage.jsp // Identify page data values that are outside any loops MyFirstPageURL.mainData.javaClass=com.ai.db.StoredProcedureExecutor MyFirstPageURL.mainData.db=my_database MyFirstPageURL.mainData.stmt=call stored_proc1({arg1},{arg2.quote}) // Define a set of rows needed by a loop based structure such as a list box or a table MyFirstPageURL.loop.loop1.javaClass=com.ai.db.StoredProcedureExecutor MyFirstPageURL.loop.loop1.db=my_database MyFirstPageURL.loop.loop1.stmt=call stored_proc1({arg1},{arg2.quote}) // Similar, but the rowsets provided by a java object instead of a stored procedure MyFirstPageURL.loop.loop2.javaClass=com.ai.db.MyJavaObject With the above definition you would be able to do the following: http://localhost/myApp/servlets/DisplayServlet?url=MyFirstPageURL?arg1=abc&a rg2=10 This invocation will call the necessary database calls and arrange the data in the following structure and transfer the call to the jsp page and passes the jsp page a java interface call IPageData that will allow you to access the data: data structure: <pagedata> arg1=abc arg2=10 <loop loop1> <row1> <col1> <col2> </loop> <loop loop2>.. </loop> <page_data> On the jsp page you simply access this data via the IPageData interface. As you can see no JDBC coding is necessary except for the JSP page itself Just remember that the keywords above are simiplified to give you an understanding of the process. Actual definitions might vary somewhat. There are automated programs with an aspire that can generate these entries by asking a couple of questions such as: 1. What kind of a transform you want: jsp/xsl/tags 2. Main data stored procedure: 3. Loop name, stored procedure: etc. Thanks Satya. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]