160 likes | 312 Views
Oracle HTMLDB introduction. CERN Oracle Developers Forum: May 12 th 2005. What is HTMLDB. A rapid web application development tool for the Oracle database. 100% web based development PL/SQL driven. Architecture. Everything is in the Database!. Oracle. WebServer. Client. RDBMS. HTMLDB.
E N D
Oracle HTMLDB introduction CERN Oracle Developers Forum: May 12th 2005 1/16
What is HTMLDB • A rapid web application development tool for the Oracle database. • 100% web based development • PL/SQL driven 2/16
Architecture Everything is in the Database! Oracle WebServer Client RDBMS HTMLDB 3/16
Pros & Cons Pros • Fast development • 100% web based • No code required • Ready to use components • Professional looking • Easy to create mock-ups • Easy to deploy • Easy to understand • Fast (no overhead) Cons • Platform lock • Difficult to debug • Tricky to customize • Scaling problems • Difficult version control 4/16
Trade Off Comparison Effort Good for small/simple projects J2EE HTMLDB ? Results 5/16
Designer Comparison • HTMLDB is not a replacement for Designer • Lacks the “design” part • Targets Web Apps • The layout is a lot more flexible • Doesn’t have any “compile” phase 6/16
Real World Examples • http://htmldb.oracle.com/references • AskTom • CERN AIS • Pre Registration Tool • Safety Information Registration • Core Training Application • HTMLDB Itself! 7/16
Development Cycle RDBMS HTMLDB Web Interface Developer HTMLDB Engine Application Metadata Web Application User 8/16
HTMLDB Interface Application Builder • Create pages • Manage shared components (Items, Templates, Translations, …) • Import & Export application SQL Workshop • Browse DB Objects (Tables, Packages, DBLinks, Java Classes, …) • Create DB Objects • Run arbitrary SQL Data Workshop • Import/Export Data from/to XML/Spreadsheet 9/16
Page Creation: Overview Request Page Pre-processing Client Rendering Order can be finely tuned mixing processing and rendering. Post-processing Branching Same or other Page 10/16
Page Creation: Rendering User Interface Items Data Loading PL/SQL Repository Input Text Checkbox Report Every Item corresponds to a “global” variable 11/16
Processing & Branching • Processes • execute PL/SQL • manage sessions state • Reports pagination • Many others … • Computations • Set “item” values • SQL or PL/SQL driven • Static values • Other item values • Branches • Application Page • External URL • Functions returning URL/page • Others … 12/16
Example: Room Booking Use Cases • Search for first available time slot • Book desired time slot • Show room availability 13/16
Conclusions • Fast implementation • Good looking results • Good for small to medium applications • It takes some time to get used to it 14/16
Resources • Official Oracle Page http://www.oracle.com/technology/products/database/htmldb/index.html • Good support forumhttp://forums.oracle.com/forums/forum.jsp?forum=137 • AskTom http://asktom.oracle.com/ • Newsgroups comp.databases.oracle.tools 15/16
Questions? ? 16/16