As I mentioned in a previous post my development environment of choice at the moment is Oracle XE, due to its small memory footprint (comparatively). It provides most the features I've needed for projects I've worked on thus far. Furthermore, the prospect of installing 10g Enterprise is a task that doesn't sit too well, as I've known it to be a bit of a mission in the past.
Unfortunately as I have become more experienced, I've discovered that XE lacks certain features that I would sorely like to make use of in my next Project. One such feature is Java Stored Procedures.
I need to write some Java which basically manipulates a PDF form which users will fill out and upload to the system we're developing. The Java code will then strip these responses out and store them in the appropriate database fields.
Technically I can see two possible ways of accomplishing this, through:
However I am unsure as to which is the best way to proceed. I would like to use Java Stored Procedures, as it is a process I think will re-occur time and time again. The process will also be heavily tied to an ApEx application. This makes calling a Java Stored Procedure fairly trivial. The solution would also appear to integrate better.
I can however see some potential problems if/when the database version is upgraded. For instance will the code be compatible with the Java Environment shipped with 11g (or subsequent database versions)? At present 10g is J2EE 1.4.2 compliant but I have no idea what version of Java 11g will comply to. At present I don't even know whether this matters.
Either way I think its time to move to a more enterprise like development environment on my laptop for when I'm on site. Without wanting to make a hash of my Windows Installation, I've opted for creating a VM instance running on Oracle Enterprise Linux.
Hopefully I'll remember to post an update on my Java dilemma and let you know which way we opt for.