środa, czerwca 30, 2004

HTML DB rozwiniecie PL/SQL WebToolKit

HTML DB - The Web Development Tool For The Rest Of Us?
I went along to an Oracle Partner Workshop on HTML DB yesterday, at Oracle's offices in Reading, UK. Oracle run these occasionally and they're a good opportunity for developers to quickly get to know new Oracle products.

HTML DB is the new 'rapid application development' tool for the Oracle database, delivered as part of Oracle Database 10g or as a separate download for Oracle 9i 9.2.0.3 or higher. HTML DB helps you generate PL/SQL web applications, with the Oracle Portal 'look and feel', using a declarative GUI environment that is aimed at developers and power users with a basic understanding of SQL and PL/SQL.
Applications built using HTML DB are positioned somewhere between Oracle Portal applications (built using the forms and chart wizards within Portal) and full-blown J2EE applications, built using JDeveloper, UIX, BC4J and so on. I was particularly impressed with HTML DB, and here's a few reasons why.

First of all, it's a web applications development environment that's particularly suited to PL/SQL developers. If you've used the PL/SQL Web Toolkit that comes with Oracle 8i and higher, you'll immediately feel comfortable with the mechanisms behind HTML DB - it's all written in PL/SQL and uses the Web Toolkit, and applications built using HTML DB are PL/SQL Web Toolkit applications. Although HTML DB applications have the same look and feel as Oracle Portal applications, and those built using JDeveloper, UIX, ADF and so on, there's no Java, JSPs, servlets and so on behind the technology. Everything is built using the HTML DB graphical user interface, and any coding that needs to be done (which is very little) is done directly in PL/SQL. In addition, all of the functionality of HTML DB is exposed as packages, procedures, bind variables and normal Oracle tables, and it's therefore extremely easy to interface HTML DB with your existing PL/SQL program logic. It's a web development environment 'for the rest of us'.

HTML DB looks very east to use. It's aimed at all the Microsoft Access developers you find within an organization, and consequently the building process is iterative and encourages experimentation and trying things out. Each form and report you build has an 'edit' link at the bottom, allowing administrators to change things around and rerun the form without the need to recompile, relink and rebuild the application. Data from spreadsheets and text files can be easily uploaded to the database, with HTML DB creating tables and auto-incrementing primary key columns behind the scenes. Everything is done graphically, and there's no real requirement for you to design your application in full up front - the tool encourages experimentation and it's easy to add functionality to an application as you go along.

Having said that, it's not a 'dumbed down' application. HTML DB applications can authenticate against Oracle OID and Single Sign-On, other LDAP servers, external authentication methods or use Oracle database security. HTML DB applications can be published to Oracle Portal, and can take advantage of database features such as Fine-Grained Access Control and Label Security.

One of the coolest features in HTML is how it handles sessions and state. Traditionally with PL/SQL Web Toolkit applications , handling session data is a bit of a headache, with custom code having to be written to store session data in cookies; HTML DB automatically handles sessions by assigning a numeric ID to each logged in user, and automatically passes that ID around from page to page. The numeric ID gets stored in the database, with all session variables saved in oracle tables using this ID. This means that the database, rather than an application server, handles sessions and statefullness, which uses up less memory and takes all of the responsibility away from the application developer.

The only part of Oracle's approach towards HTML DB that I'd disagree with, is in that they are pitching it towards what they refer to as 'Power Users' - users within the business who currently build VBA applications, spreadsheets with lots of macros, and so on. In my opinion, it's better suited to PL/SQL developers, ideally with experience with the web toolkit, who want to make themselves more productive and turn out applications of a higher quality and in less time. You don't need to know PL/SQL, but the tool is much more powerful if you do, and applications that HTML DB creates look just like the Java web applications created using JDeveloper.

Being honest, because HTML DB is pure PL/SQL, and runs directly on top of the Oracle database, it's got a smaller footprint and appears to run faster than a java web application, and would be easier for a PL/SQL developer to design and debug than a n-tier java application.

In my opinion, HTML DB is just the tool that PL/SQL developers have been looking for. It's easy to use, but still allows us to use our Oracle development skills to turn out top-notch applications. Give it a look over when you get a chance.

Portal
LDAP
PLSQL Web Tool Kit
HTML DB

Brak komentarzy: