Had my adventures today. Most of the packages are compile and the XDB utility packages are in place (will come back on those in a later post). Apparently as said before, Mark has added some extra new functionality “Application Security” for use with APEX. This almost locked me out today after bringing into place all the packages, dependencies etc. While almost finished, my APEX “admin” account was locked out. I did a reset of the admin password but then I got the neat security message: “Access denied by Application security check. Application access restricted to internal workspace users.“. Oops.
Although…Its actually cool …
Hacked my way in via amongst others resetting the admin password again and xdbconfig.xml content that controls the (as it is called in the APEX domain) PL/SQL Gateway (aka the XMLDB Protocol Server).
Its not yet “the breeze” I hoped for in regard to “Installing XFiles” on APEX. I am missing parts of the source that XFiles in APEX is build upon and although I know where I can get it, it is not easy to implement it “The APEX” way. For example XFiles is depending on XDB Utilities, packages and methods in PL/SQL, that makes life easier while working with XMLDB and/or have implemented some of the best practices ideas of the XMLDB Development team and others. To do it, installing those, the “neat way”, it should be created in a different Oracle schema and not in the APEX workspace user owner (other database schema’s might enjoy them as well in the database).
A DBA View on Things…
APEX doesn’t have, AFAIK as a newbie, yet a proficient way to make this easy to install, or at least what I thought could be done, via a single packaged install. First of all, as said, there are dependencies to other “outside” packages and privileges. APEX doesn’t checks this but just fails and show a nice report with the failed statements (nice implementation) but would it not be even nicer to have a pre and post installation workspace import pages that checks on criteria needed and/or set by the creator of the APEX application before and afterward, the workspace SQL file is even imported. Ever have used, for example the latest, Oracle Software installer… That kind of thing but be a nice asset. There is now to much stuff, I hope that I actually implement correctly / as the APEX application creator, mend it to be.
An example. Apparently this XFiles demo application has been progressed in his source since the mentioned OOW 2008 Mark & Carl demo. It needs the database compatible parameter to be set to0 Oracle Database version 22.214.171.124.0 to actually work in respect to demonstrated the Application Security for APEX build upon XMLDB Access Control List Security (ACL’s) features, as demonstrated by Mark during Oracle Open World 2009 (Managing XML Content with Oracle XML DB and Oracle Application Express).
The first page, the XFiles APEX login page, hints this security feature implemented (check box with “Application Principle”)…
In his final/last post on his blog site, called OOW recap (Pt 2), Carl described this session and the XFILES demo application:
The session I helped out with a bit was Mark Drake’sOracle Application Express and Oracle XML Database: A Match Made in the Database. This session had it’s beginning’s way back at Web2.0 Expo where Mark and I shared a demo booth. XMLDB has a standard sample/demo called XFILES which is a simple yet full featured file management system using all XMLDB features. But it requires using a java server and is kinda slow , well I think it’s slow but I might be biased.
So I was like hey Mark! you should build this in APEX since we are both built in features of the database. And lo and behold the his session was born. I helped on and off with building the demo application , and it was a big learning experience, both with the features XMLDB provides as well as were APEX does not leverage them well, something we will be working on improving.
Mark at OOW asked if I could sit in so if there was any specific APEX questions, and hey I’m a people person so of course I said yes. The session was very well attended with many people in the audience already familiar with APEX and/or XMLDB. Mark covered the basics of XMLDB and I quickly went over APEX basic’s and then it was all demo.
I really think the application demo and explanation of how things were created was a hit, it showed the power of XMLDB as well as how APEX can leverage it’s features directly out of the database. Just the number of hands that came up with people saying things like
Hey I just built that a month a go and yours is cooler.
Hey I need to build that in the near future and these are great ideas.
Hey can I have that application?
shows that this session hit a sweet spot. A couple things I got from this is that people like that APEX can directly leverage built in database features and want more of it easier, and secondly I need to really make time to clean up that XFILES application so it can be a packaged application.