I am a software developer who has specialised in Oracle based development for the last 4 years, but thanks to the economic downturn has found himself out of work.
In an effort to broaden my skillset (by learning some Java!) I've developed the Webflow-Oracle template application, which is an attempt to build a web-based application which implements some of the functionality that almost all business information systems will need.
It has been developed with:
* Java 1.6
* Tomcat 6.0.20
* Oracle XE 10G
So, there is:
* Logon facility
* New user creation facility
* User management facility
* Reporting subsystem
* Reference data management subsystem
I've tried to leverage my Oracle knowledge when building it, and as such the following differentiate it from applications following what I perceive as being the predominant trends of the moment:
* Rejection of the ''one big application user'
' model. Instead Oracle users are used for end-user authentication (also, Oracle proxy users are supported for applications whose creators wish to use connection pooling).
* Data operations are performed via a PLSQL database API. The application does not use ORM. This decision has been taken in order to:
* maximise security through database roles and grants
* Eliminate threat of SQL Injection
* Maximise performance by minimising network round trips and by taking advantage of Oracle specific features
The project is available from
svn co https://springwebflowte.svn.sourceforge.net/svnroot/springwebflowte
To install it, download the project from the SVN repository.
Alter the file "\src\main\database\oracle\install.sql" and set the values of the following variables appropriately:
Alter the file "\src\main\database\oracle\define_schema.sql" and set the values of the following variables appropriately:
Run the following SQL* Plus command: @\src\main\database\oracle\install
This will install the database portion.
There is a .WAR file containing everything required at https://springwebflowte.svn.sourceforge.net/svnroot/springwebflowte/war/secure.war
. You may need to alter the contents of the context.xml
file to something more appropriate.
There is also a readme file at https://springwebflowte.svn.sourceforge.net/svnroot/springwebflowte/readme.html
with some more information.
Some bits and pieces still need to be done - such as unit tests, and some of the files could do with some more detailed comments, but if nothing else, it should provide some solid examples of how to do some things using webflow, such as spring security integration, dynamic forms and handling multiple forms on a single page.
I think that as a relative novice in Java, and without a yardstick, the quality of the Java itself is probably low compared to what people here are used to. However, if anybody uses this application I'd be very greatful for any feedback and pointers on how to improve things. (There is an email address on the applications' web pages).