Oracle is a strong supporter of numerous Open Source initiatives. Whenever possible Mizar builds on Open Source foundations, especially when they are actively supported by Oracle. Mizar has built a large library of open source Java and JavaScript classes to integrate JavaServer Faces for both the open source MyFaces Trinidad JSF implementation and Oracle's own ADF Rich Client. The Java classes binding the JSF view layer to the Oracle database are built using Java Persistence Architecture (JPA) beans using Eclipselink an open source JPA Provider. Both MyFaces Trinidad and Eclipselink are strongly supported by Oracle.
Mizar's primary technology asset is the Mizar Framework, which provides an open source framework that integrates Oracle's latest Web, Database, and Spatial technologies. Exclusive of copyright notices the Mizar Library is made up of more than 117,000 lines (3.5 million characters) of Java, JavaScript and JavaServer Faces code and represents the work of four highly experienced developers over a six year period, which we conservatively estimate at 10 to 15 man years of dedicated effort.

Oracle's newest Fusion 11g technology combines their core RDBMS with Oracle WebLogic Server using a powerful JavaServer Faces component library called Oracle ADF Rich Client Faces, which extends the Oracle sponsored open source MyFaces – Trinidad project.
Oracle strongly promotes their Drag & Drop technology and for good reason. The Drag & Drop paradigm is targeted at the non-programmer typical of many Oracle installations. The oft-echoed sound bite is that Drag & Drop technologies make it possible for non-programmers to create advanced applications. And this is true; Oracle's newest Drag & Drop tools are amazingly productive at creating relatively simple one-off applications. But Oracle's Drag & Drop tools suffer the same limitations that Microsoft's and other's do: they are devilishly difficult to maintain and upgrade and they lock the system into the Oracle development metaphor. Advanced demonstrations come packaged with specific ADF release libraries, because they will only work properly with one specific release. If the goal is to create attractive, quick, one-off applications – which is true of a large number of applications – then Drag & Drop is an appropriate technology. We've used it ourselves when this is the case.

Drag & Drop technologies are designed to provide non-programmers with easy-to-use tools but insiders (including Drag & Drop developers) know that they limit reusability and long term extensibility because they are difficult to maintain and upgrade. It has been admitted that "if you've got good Java programming skills you'd program in Java rather than Drag & Drop".
The Mizar Framework is an integrated set of Java, JavaServer Faces (JSPX), and JavaScript files.
The Framework is highly modularized and has grown over six years, four major technology changes, and dozens of beta releases of Oracle and Open Source libraries. We know the Mizar Library is maintainable and extensible because we've seen it through numerous changes in both Oracle and Open Source technologies:
Although the Framework includes over 117,000 lines of code it is highly compact and represents an even larger code base than might be first thought. Leveraging the Object Oriented power of Java abstract classes and interfaces the same code is used by dozens or hundreds of inheriting classes. As an example, the code required to create a spatial filter – by polygon, circle, or point – for every application and for every spatial database table type is handled by declaring the specific database Java bean to extend the Mizar Framework GeometryBean and the associated JavaServer Faces Table class to extend TrinidadSpatialTable. Not only is spatial filtering enabled but hundreds of spatially relevant behaviors are inherited automatically.

The deep generalization and abstraction used by the Mizar Framework means that custom applications require as little as 15% customization and most of that is associated with client specific Java Beans. (A Java Bean is a Java language representation of a database row.) Applications can be prototyped rapidly and the custom development effort quickly focuses on the unique aspects of the project.
The Mizar Framework can be described in four major package families supporting an application and each with distinct and hierarchical dependencies.

The MizarCommon collection includes all Java classes that are free of any other package dependencies. These classes can be used in any Java application and do not depend on JPA or Faces or a Java EE platform.
The Persistence packages provide a bridge between Java and a Relational Database using either JDBC or JPA connections. Classes supporting JDBC support both direct and managed (Java EE) connection. The MizarPersistence packages depend on MizarCommon alone and can be run in either a Java EE middle-tier environment or with Java SE as a Swing or Command-line application.
The MizarFaces packages require both MizarCommon and MizarPersistence and bind these to JavaServer Faces.
The MizarSecurity packages provide a powerful middle-tier user authentication system that supports an LDAP type credential paradigm. Users are granted Permissions, which applications can be programmed against. The same application can be used by Guests, Reviewers, Editors, and Administrators and will dynamically change depending on the user's permissions. Complex sets of permissions can be bundled into Roles or Groups. Roles are sets of Permissions; Groups are sets of Roles and Permissions. Groups are often organized in association with spatial areas. Thus someone might have Edit permissions within their own County but not in other counties.
Source assets are organized as Java code, JavaScript Code, and JavaServer Faces Templates.

Java is the standard enterprise language for Oracle applications, both in the database and the middle-tier. Oracle has been a major contributor to Java for over a decade; they acquired Java with the 2010 Sun Microsystems acquisition; and have made substantial commitments to the language since the acquisition. Java has a long future for the Oracle, Open Source, and other development communities.
JavaScript is a web-browser supported client side programming language that resembles Java. JavaScript has taken on a new life as the supporting architecture for the client side of JavaServer Pages and Ajax technologies.
Oracle, and most of the software world, has undergone a revolution as the first phase of web application techniques have been replaced by a much stronger and more professional second generation tools. The first generation of solutions was built with the crudest of tools. Tools evolved from basic J2EE Servlets and JavaServer Pages (JSP) to Struts frameworks. All of these involved considerable plumbing and resulted in code that as difficult to maintain and extend as it was to write in the first place.
Conceived in 2001 the first release of JavaServer Faces appeared in 2003, initially released as Java Specification Request 127 (JSR-127) which states one of its goals is to "… establish a standard API for creating Java Web application GUIs, which will eliminate the burden of creating and writing GUI infrastructure for developers." JSF is about user interfaces in the traditional sense; buttons, text fields, check boxes, sliders, menu bars, pop-ups, calendars, color pickers, and many many more. JSF accomplishes this without the need for the HTML markup code typical of the first decade of web development. JSF is about readable and maintainable code that will enable the creation of substantially larger, more complex applications that just happen to be web distributed.
Oracle has an excellent white paper on this topic found at http://www.oracle.com/technology/products/jdev/collateral/4gl/papers/JSF_For_4gl.pdf
Oracle's considerable commitment to JSF and their willingness to donate their work to the Open Source communities is such that their latest JSF tag library, ADF Rich Faces, will form the foundation of Oracle Forms and Reports. And, even Oracle technical staff admit that the power of this foundation system put together with JDeveloper will rival and supersede anything that can be created with the declarative tools such as Oracle Forms.
JavaServer Faces is a Java Enterprise Edition component (JSR 314). Mizar has created a number of standardized templates that bind to the JavaScript and Java classes. These templates are simply added to an application to enable a wide range of behaviors; from establishing spatial search criteria to displaying lists of displayable Layers (Themes).