As Published In

Oracle Magazine
May/June 2006
Cover Feature: Oracle Developer Tools

From Application Express to XE
By David A. Kelly

From Application Express to XE, Oracle's got the tools you need.

As IT systems get larger and more complex and as business requirements multiply, developers and architects strive to keep up with their organizations' demands. Oracle makes developers' lives easier with its integrated technology stack, support for industry standards and open source, and free developer tools and tutorials. Find out how Oracle offers one-stop shopping for developers—from database development to integrating Windows .NET applications, from Oracle Fusion Middleware to support for Linux, from Extensible Markup Language (XML) to security—by providing all the tools, technologies, and resources they need to get their jobs done.

Database Development

Oracle is well-known for its enterprise databases, but now there are some new kids on the block designed to help database developers. See how a small-footprint, free database; an integrated rapid Web application development tool; and an intuitive code editor and debugger simplify database development tasks to make your life easier.

Oracle Database 10g Express Edition. The newest version of Oracle's well-known enterprise database, Oracle Database 10g Express Edition (Oracle Database XE), provides a free, small-footprint, easily downloadable database for both development and deployment. It has all the development capabilities of its enterprise cousin and is ideal for developers who need an entry-level database for their applications.
Developing with Oracle
Developing with Oracle
Download pdf

"Oracle Database XE is great for developers who are working on PHP, .NET, or Java applications or even doing simple Web or HTML programming," says Monica Kumar, director of product marketing, Oracle. "Oracle Database XE is not only free to develop and deploy but is also free to distribute, so if an ISV or developer wants to embed Oracle Database XE in an application, they can do so for free." Oracle Database XE can support 4GB of data and one instance of an Oracle database, and because it's built on the same code base as Oracle Database 10g Release 2, it offers a seamless upgrade to other Oracle Database editions such as Oracle Database 10g Standard Edition One, Oracle Database 10g Standard Edition, or Oracle Database 10g Enterprise Edition. "Oracle Database XE is cost-free, and it's risk-free," Kumar says.

According to experts, Oracle Database XE is a choice that's great for non-Oracle users—especially developers. "Oracle Database 10g Express Edition provides an easy-to-use GUI that allows even non-DBAs to get up and running quickly, making it great for developers," says Jeffrey Hunter, senior database administrator (DBA) with the DBA Zone, a Pittsburgh, Pennsylvania-based company that offers expert remote managed database administration services for customers running Oracle. "I believe that the introduction of Oracle Database 10g Express Edition fills a gap for developers writing code against an Oracle database. It provides developers the ability to run a fully functional version of Oracle Database 10g on their laptop, for example, giving them the flexibility to work mobile and not have the constraints of being connected to a central server."
Security Developer Toolkit: Meeting the Security Challenge

Security used to be the concern of a few consultants or networking specialists in IT, but things have changed.

"Executives now understand and support the deployment of more and more sophisticated protection measures," says George Jucan, CEO, Open Data Systems, a Toronto, Canada-based consulting services company. "Security and privacy protection expenditures are an important concern for business executives—especially medium-to-large companies that usually rely on Oracle Database to manage their data assets. State-of-the-art security features and avoiding cross-product integration hassles [make] a compelling business case to use Oracle tools and products for security enforcement."

Such features can be found in Oracle Security Developer Tools, a suite of Java-based security and federation technology application-programming interfaces (APIs), based on industry specifications published by the Organization for the Advancement of Structured Information Standards (OASIS), the Liberty Alliance Project, the Internet Engineering Task Force (IETF), and other standards bodies. Oracle Security Developer Tools are an offshoot of Oracle's Identity Management suite of products; they ship with Oracle Application Server 10g and are available for general use.

"They're pure Java toolkits that are portable and can be used to extend the security of the application server as well as enable federation and interoperability between clients and servers," says Howard Bae, product manager, identity and access management, Oracle. Bae notes that Oracle Security Developer Tools offer everything from low-level cryptographic algorithms support, certificate management tools, and secure messaging capabilities, "as well as APIs implementing the XML security digital signature and encryption specifications all the way up to Web services security and federation."

That kind of complete protection can be compelling for developers, given the changing requirements they face. "Software development shops are focusing more on designing and coding for security, rather than enforcing security on the overall system after it's built," says Open Data Systems' Jucan. "It's important to apply the basics, the frameworks, [and] the proven solutions to secure your solutions but also to continue looking for innovative solutions to security threats. Oracle Security Developer Tools provide a wide range of tools, from data and message encryption to component authentication and authorization. Using them creatively in development will create a lot of trouble for potential intruders during operations."

Hunter especially likes that Oracle Database XE users have the opportunity to register for an Oracle Database XE Discussion Forum hosted by Tom Kyte, an Oracle vice president, technology author and Oracle Magazine columnist, and Oracle Database XE evangelist. Registration to the forum is possible only by downloading and installing Oracle Database XE.

Oracle Application Express. What Oracle Database XE does for database development, Oracle Application Express (formerly Oracle HTML DB) does for Web application development.

"Oracle Application Express has been around since the inception of Oracle Database 10g in February 2004 and is a tool to develop Web-based applications quickly on an Oracle database," says Sergio Leunissen, senior product manager, Oracle. "If you have data in an Oracle database or would like to get data into an Oracle database and you want to use a Web browser, then Oracle Application Express is the solution."

One of the ways that Oracle Application Express makes life easier for developers is through its metadata-driven, declarative development process, so that you don't have to write a structured program to receive input and produce output. "It greatly improves the speed with which you can develop an application because it handles all the templating and the sessions-state management. The hard stuff you need for a Web application is taken care of for you automatically," says Leunissen.

"Oracle Application Express is a great replacement for people who are charged with moving their Microsoft Excel and Access applications onto a more stable platform—it's a godsend to them," says Hunter. "It's built around ease of use, which is great for developers, and uses all the capabilities of a reliable enterprise database."

Oracle Application Express is a standard feature of Oracle Database 10g and is available at no extra charge with Oracle Database 10g Standard Edition One and Oracle Database 10 Standard and Enterprise editions; it supports everything from single-user applications to enterprise Web applications serving thousands of users. "[Oracle] Application Express inherits the performance, scalability, security, and reliability properties from Oracle, so you can absolutely build a secure, scalable application that you can deploy to thousands of users," says Leunissen. "A good example of an Application Express application with a large user population is our online support site, metalink.oracle.com."

Oracle SQL Developer. While developers typically work in the middle tier or presentation layer of an application, sometimes they have to go to the source and create or manage logic in the database itself. That's where Oracle SQL Developer comes in.

This client-based graphical tool for developers who interact with Oracle database is designed to make browsing, editing, debugging, or creating data logic such as triggers and stored procedures easier. It is also designed for developers who need access to logic stored in a database for developing and testing SQL and PL/SQL code.

"In the past, developers may have turned to third-party tools or our SQL Plus command-line editor to interact with Oracle database," says Leunissen. "But SQL Developer provides a classic IDE graphical interface that allows developers to easily establish connections with multiple databases and look at schemas and objects. And it's a free download from OTN [Oracle Technology Network]."
XML: Extending Your Reach

For companies pushing the envelope of enterprise development, XML is just the technology to extend their reach.

"We see XML technology not as replacing or even supplanting relational databases, but as being able to address a large class of problems where it will be a much more natural fit than current technologies," says Peter Black, managing director at Digital Steps, an enterprise software developer based in Guildford, England.

Digital Steps was an early adopter of XML technology and has completed several major projects that store and manipulate XML documents in their Oracle database.

"We look at XML as a tool to reduce the number of transformations we have to do, building on the repository to support the seamless delivery of Web services," says Black. "For example, our EnergySys subsidiary is making extensive use of Oracle XML Database [XML DB] in our GAMMA application for the oil and gas industries."

Digital Steps found Oracle's approach to XML compelling. "When we started to look more extensively at the use of XML and the storage of XML, we recognized that some of the capabilities that Oracle was developing were unique in the marketplace, with many of the features we needed. This was very different from what the competitors were offering," says Black.

Since one of the key benefits of using XML is flexibility, Oracle's support for XML was designed to enable developers to tap into that flexibility. "Developers need to realize that there are multiple ways of storing XML within Oracle Database. One size will never fit all. Depending on the needs of the application, you have to have flexibility, and that's what Oracle XML DB gives you," says Mark Drake, product manager for XML technology, Oracle. "It enables you to abstract the application development from how the data is stored."

For Digital Steps, Oracle's XML support and agility are invaluable. "We're using XML storage as our primary persistence mechanism and applying the full flexibility of XML schemas and XML's capabilities to build highly sophisticated custom data models and saving them directly into the data store," says Black. "We're trying to minimize the impedance mismatch between the tiers of the application, so we're using XML end-to-end, from the storage medium through the business tier and out through and into the user interface, as well as on a business-to-business basis through Web services. It's given us a tremendous opportunity to have a fairly seamless transition from repository through to delivery."

Moreover, Oracle SQL Developer has a very small footprint and doesn't require an Oracle home, so it can be used to connect to any database without requiring an Oracle client. "It runs on Windows, Linux, and Mac OS X and includes a debugger and code formatter for free," says Leunissen.

Oracle JDeveloper Builds Fusion

Oracle JDeveloper 10g is an integrated development environment (IDE) for building service-oriented applications using the latest industry standards for Java, XML, Web services, and SQL. It offers a complete environment for database developers, and its visual and declarative development approach—combined with Oracle Application Development Framework—offers developers a range of technology stacks.

"There is no doubt about it—the features, functionality, frameworks, assistants, and easy-to-use graphical interface are all attributes that position Oracle JDeveloper as a top choice for any Java development, even more in Oracle environments," says George Jucan, CEO, Open Data Systems, a Toronto, Canada-based consulting services company. "It was no surprise to me that all three top teams in the RAD Race during JavaPolis 2005 used JDeveloper as their toolset of choice. More software shops are starting to use or investigate JDeveloper as their J2EE development platform."

Oracle JDeveloper 10g Release 3, the latest version, and now available for free download on OTN, includes support for the latest Java standards from the J2SE 5 platform. "In Oracle JDeveloper 10g Release 3, we have full support not only for EJB [Enterprise Java Beans] 3.0 but also for JavaServer Faces," says Dennis MacNeil, principal product director, Oracle. "JavaServer Faces lets developers simplify the building of user interfaces and gives them the ability to use third-party components."

Jucan says that Oracle JDeveloper's integration with Oracle Database makes it a natural for Web services development. "For me, there's no reason not to use JDeveloper for Web development if you already use Oracle Database—not only does it provide every feature (and more) available in other major Java IDEs, but it also integrates natively with Oracle Database and Oracle Application Server," he says. "Any J2EE developer with experience in other toolsets will be able to adjust easily to JDeveloper's graphical interface. I think that with 10g Release 3, Oracle took a big step toward becoming the favorite IDE for J2EE development."

For Oracle, supporting standards while enabling greater productivity is a critical component of its developer tools strategy. "We realize that there are a lot of new technologies emerging, especially around scripting languages like PHP or Ajax or new frameworks, and we want to make sure they are easy to integrate into Oracle Application Server while still adhering to standards, so we don't lock our customers in," says Oracle's MacNeil. "For example, with our support for EJB 3.0 and JavaServer Faces, we're one of the leading vendors in terms of providing support for the next generation of Java Enterprise Edition platform."

MacNeil adds that this support for standards makes Oracle JDeveloper flexible. "Tools like Oracle Fusion Middleware and Oracle JDeveloper provide the basis for being able to extend and evolve the next generation of applications, making it easier to build, customize, and adapt them as business needs change," he says.

Oracle Fusion Middleware: Integrating the Technology Stack

The developer's individual tools are a fundamental component of Oracle Fusion Middleware, a comprehensive, integrated family of products that supports development, deployment, and management of service-oriented architecture (SOA). Oracle Fusion Middleware can be used today by companies that want to enhance their applications—including Java and .NET, and packaged, legacy, and vertical applications. An SOA enables organizations to publicize core functions of their applications as services to better connect with their suppliers, partners, and customers.

This portfolio of software products in Oracle Fusion Middleware includes tools and services from developer tools to J2EE and business integration, business intelligence, collaboration, content management, RFID, identity and Web services management, and more. "The biggest thing that people should know about Oracle Fusion Middleware is that it's a platform based on open standards, and it's certified J2EE-compatible. We use this as a basis for a unique hot-pluggable architecture that enables customers to mix and match components of Oracle Fusion Middleware with their existing infrastructure," says Dennis MacNeil, principal product director, Oracle.

But Oracle Fusion Middleware goes beyond that. "It provides the most comprehensive SOA environment available today, enabling organizations to manage everything from .NET to Java Web services," he says. An SOA environment enables a more adaptable IT organization and facilitates integration. Each application is developed as an independent, loosely coupled business service, which can be integrated or reused, creating a more-flexible IT infrastructure with faster delivery cycles and lower costs.

Take business integration, for example. Oracle Fusion Middleware supports application integration, process integration, information integration, and business partner integration through products and components such as Oracle BPEL Process Manager, Oracle Business Activity Monitoring, Oracle Data Hubs, Oracle Enterprise Messaging Service, and other services. Moreover, Oracle BPEL Process Manager allows developers to orchestrate business services—and not just on Oracle platforms. "You can run Oracle BPEL Process Manager on the Oracle Application Server, but you can also use it on IBM WebSphere or JBoss," says MacNeil.

Windows Development

Microsoft's development tools and platforms are an important strategic ingredient for many enterprise developers.

"Oracle has a strong commitment to supporting Microsoft platforms and developers," says Alex Keh, principal product manager, Windows and .NET development, Oracle. "We're committed to making sure that .NET users can use their development skills and resources with Oracle's product set."

For example, Oracle Data Provider for .NET (ODP.NET) enables complete access to Oracle database capabilities from .NET applications. Oracle Developer Tools for Visual Studio .NET extends that support by including a design-time GUI that plugs into Microsoft Visual Studio for browsing schema; updating table structures; changing data; and viewing, modifying, and testing stored procedures. Oracle's support for .NET Stored Procedures and the common language runtime allows developers to run C#, Visual Basic, and C++ managed code in Oracle Database 10g, making it easy to shift application code from a .NET middle tier to the database tier and back again as needed.

For Windows customers and .NET developers, these tools protect investment in existing skills and resources and use the performance, scalability, security, and reliability of Oracle Database 10g. "ODP.NET provides a full managed-code interface to Oracle and has the advantage of exposing Oracle-specific datatypes to .NET instead of offering just generic .NET datatypes," says John Paul Cook, an author and .NET and database consultant based in Houston, Texas. "ODP.NET and Oracle Developer Tools for Visual Studio .NET provide a complete toolset for [creating] Windows desktop and ASP.NET applications. The combination of ODP.NET and Visual Studio enables Windows developers to develop applications quickly, make real productivity gains, and take full advantage of Oracle Database 10g."

Open Source Development and Linux Support

Over the past few years Oracle has invested significant resources into developing, testing, optimizing, enhancing, and supporting open source initiatives such as Apache, Eclipse, Linux, PHP, and others.

"Oracle solutions combined with fully tested and supported open source technologies bring the best of both worlds together," says Oracle's Kumar. "This helps customers to get important benefits of the Oracle infrastructure, such as scalability, high availability, and performance, while helping them lower the cost of computing."

For example, the Eclipse open source platform offers developers an important freedom of choice. "We want Eclipse developers to have the same kind of support for the next generation of applications with technologies such as EJB 3.0, BPEL, and JavaServer Faces as JDeveloper developers do," says MacNeil. "Eclipse is a popular choice among developers, and we're ensuring that if they make that choice, that Oracle Fusion Middleware, which is also built on standards, will be a great environment for them to deploy to."

Next Steps

READ more about
Oracle JDeveloper 10g
Oracle and Linux

LEARN more about
Oracle Fusion Middleware
Oracle Security Developer Tools
the JavaPolis RAD Race

EXPLORE the XML Technology Center

DOWNLOAD
Oracle SQL Developer
Oracle Database 10g Express Edition
Zend Core for Oracle

VISIT Oracle Database XE Discussion Forum

While most developers are probably aware of Oracle's commitment to Linux, they may not realize that Oracle's entire E-Business Suite and database development organizations—more than 9,000 developers—use Linux to develop Oracle products. In addition, Oracle has made open source contributions to Linux, such as the Oracle Cluster File System, under GPL, the GNU public license.

Oracle has enhanced its focus and efforts on the scripting language PHP through Zend Core for Oracle, a fully tested and supported PHP 5 distribution that's integrated with the Oracle Database Client libraries. "Zend Core for Oracle enables developers to get up and running in minutes with PHP and Oracle," says Kumar. "It's a prebuilt stack that configures and installs the PHP distribution and Oracle connectivity for developers so they can focus on development rather than figuring out how to marry PHP and Oracle."

While developers of Web applications will be interested in Oracle PHP initiatives, Kumar believes that developers of other applications understand the potential benefits of PHP. "Customers are doing very interesting things with PHP, such as connecting PHP applications to data warehouses or developing traditional business-critical applications in PHP," says Kumar. "It's a very exciting time to be involved in open source."

Developers are facing exciting—and challenging—times. Employers demand that more be done with less, even as technical demands become more complex. Integrated technology stacks, industry standards, open source, and free developer tools and tutorials can help. Check out Oracle's offerings. They might be everything you need.


David A. Kelly (dkelly@upsideresearch.com) is a business, technology, and travel writer who lives in West Newton, Massachusetts.

Send us your comments

E-mail this page
Printer View Printer View
Oracle Is The Information Company About Oracle | Oracle RSS Feeds | Careers | Contact Us | Site Maps | Legal Notices | Terms of Use | Privacy