XFILES The APEX 4 Version - XMLDB •XML-DB Demo Application GUI based on AJAX / HTML Current...

35
XFILES The APEX 4 Version XFILES The APEX 4 Version The truth is in thereRoel Hartman & Marco Gralike

Transcript of XFILES The APEX 4 Version - XMLDB •XML-DB Demo Application GUI based on AJAX / HTML Current...

XFILES – The APEX 4 Version

XFILES

The APEX 4 VersionThe truth is in there…

Roel Hartman & Marco Gralike

• Oracle since v5, Forms 2.3, Case*Designer etc

• Presenter at UKOUG (4x), OOW (3x), Collab (1x), ODTUG (2x), OBUG, OGH, etc..

• Oracle ACE Director [DB Dev]

• Co-author of Expert Oracle Application Express

What about me?

• Oracle DBA since v6 (1993), XML-DB since (2003)

• Presenter (among others): UKOUG, Oracle Open World,MOW, Hotsos, OGH, OPP, ODTUG, UKOUG

• Oracle 11gRx database, XBRL Extension Beta trails

• Oracle ACE Director [XML-DB]

• OakTable member

• Customer Advisory Member Board XML-DB Oracle 12x

What about me?

History

XFILES - XMLDB

• XML-DB Demo Application GUI based on AJAX / HTML

Current version XFILES version V

• Mark DrakeSenior Product Manager

Oracle XML-DB

• Demonstrates (among others)

Native Database WebServices (NDWS) / SOA

Geo Information based XML handling

XFILES - APEX

• APEX GUI

• W/ help of Carl Backstrom

XFILES version IV

• Oracle Open World 2008

• Demonstrated Combined Power

APEX (V 3)

XML-DB (V 11.1)

Versioning & Lightweight Application Security

XML-DB

• Based on XML (&Related) Standards

• XML Handling

Stores, Consumes, Generates, Validation

• XDB Repository

HTTP(s), FTP & WebDAV

Repository Events

• Supports Security (ACL’s) & Versioning

• XPath V2, XSLT V1, XQuery V1, XBRL

Features Used

• XDB Repository

• Versioning, CheckIn/Out functionality

DBMS_XDB_VERSION

• Resource (file, folder) manipulation

DBMS_XDB

• Default XDB ACL Driven Security

XDB Repository Resources

• Access to XDB Repository

PATH_VIEW, RESOURCE_VIEW

• XDB$Resource

XDBResource.xsd

XMLType Table (Schema based XML Table)

• Select, Update, Delete

UNDER_PATH, EQUALS_PATH

Version Control

Create ResourceLock the Resource

Make itVersioned

Check it OutUpdate the Resource

Check It In

UnLock the Resource

Process Flow

# Create file / dbms_xdb.createResource

1. dbms_xdb.lockResource

2. dbms_xdb_version.makeVersioned

3. dbms_xdb_version.checkOut# Update file content

4. dbms_xdb_version.checkIn

5. dbms_xdb.unlockResource# Done…

Create Versioned Resource

Original source, with permission, by Mark D Drake, Senior Product Manager, Oracle USA

Create Versioned Resource

Original source, with permission, by Mark D Drake, Senior Product Manager, Oracle USA

Create Versioned Resource

Original source, with permission, by Mark D Drake, Senior Product Manager, Oracle USA

Create Versioned Resource

Original source, with permission, by Mark D Drake, Senior Product Manager, Oracle USA

Create Versioned Resource

Original source, with permission, by Mark D Drake, Senior Product Manager, Oracle USA

Create Versioned Resource

Original source, with permission, by Mark D Drake, Senior Product Manager, Oracle USA

Helper Function: getVersionHistory

Original source, with permission, by Mark D Drake, Senior Product Manager, Oracle USA

XMLTable Statement

Original source, with permission, by Mark D Drake, Senior Product Manager, Oracle USA

XMLTable Statement

Original source, with permission, by Mark D Drake, Senior Product Manager, Oracle USA

XMLTable Statement

Original source, with permission, by Mark D Drake, Senior Product Manager, Oracle USA

XMLTable Statement

Original source, with permission, by Mark D Drake, Senior Product Manager, Oracle USA

XMLTable Statement

Original source, with permission, by Mark D Drake, Senior Product Manager, Oracle USA

Demo

Version Control

• APEX has no files – at least, not a lot

• APEXExport Utility

• Export from Builder

• Export from SQL Developer

Version Control for APEX isn’t thatdifferent from PL/SQL !

Version Control

• apex_util.export_application

• apex_util.export_application_page

• apex_util.export_application_component

Issues :• undocumented and unsupported• USER instead of CURRENT_USER (4.1?)• Developed for SQL Developer/Plus

Version Control

• Export functions of wwv_flow_gen_api2

• Using wwv_flow_css_repository

• Using wwv_flow_html_repository

• Used in the Export utilities of the builder

Issues :• Even more undocumented and unsupported

Demo

Bu

yTh

isB

oo

k

Conclusions

• APEX / XMLDB

Extreme Powerful Combination

• Functionality

APEX Powerful Database Driven Mature

Web Development Environment

XMLDB Versioning / Security Build-in

Easy PL/SQL based Automation Possible

Questions

Thank you

34

Contribute !

Contact

Logica | Meander 901 P.O. Box 7015 | 6801 HA Arnhem | The Netherlands | www.logica.com

Contact: Roel Hartman - Lead Technical Architect Oracle: +31 (0) 26 3765 000 M: +31 (0) 6 2954 3729 E: [email protected]

AMIS Services BV | Edisonbaan 15 P.O. Box 24 | 3439 MN Nieuwegein | The Netherlands | www.amis.nl

Contact: Marco Gralike – Principal Database Consultant: +31 (0) 30 6016000 M: +31 (0) 6 29042385 E: [email protected]