Oracle Forms Services Oracle HTTP Server

Oracle Fusion Middleware Components 3-21 delimited text, PostScript, and RTF to any destination including e-mail, Web browser, WebDav, FTP, printer, Oracle Portal, and file system in a scalable, efficient manner. Oracle Reports includes the following components: ■ Oracle Reports Builder: Report developers use the Oracle Reports Builder design-time user interface to create and maintain report definitions. ■ Oracle Reports Services: This component executes, distributes, and publishes your reports for enterprisewide reporting. Using Oracle Reports Services to deploy your reports results in gains of flexibility, time savings, and processing capacity. It includes the following components: – Oracle Reports Bridge that provides functionality for discovering a Reports Server across farms. – Oracle Reports run time that runs a report by starting its own in-process server not to be confused with the default in-process Reports Server, which runs in the same JVM as the rwrun process. – Oracle Reports Client that provides a command-line interface to send a report to a remote Reports Server. – Oracle Reports Servlet that translates and delivers information between either a Web Server or a Java EE Container for example, Oracle WebLogic Server and the Reports Server, enabling you to run a report dynamically from your Web browser. – Oracle Reports Server that provides reporting services to execute, distribute, and publish your reports for enterprisewide reporting. This component processes client requests, including user authentication, scheduling, caching, and report distribution. For more information about Oracle Reports, see the Oracle Fusion Middleware Publishing Reports to the Web with Oracle Reports Services.

3.9 Oracle Forms Services

Oracle Forms Services is a middle-tier application framework for deploying complex, transactional forms applications to a network such as an intranet or the Internet. Developers build Forms applications with Oracle Forms Builder and deploy them with Oracle Forms Services. With Oracle Forms Services, business application developers can quickly build comprehensive Java client applications that are optimized for the Internet without writing any Java code, and that meet and exceed the requirements of professional user communities. These Java client applications are Web-deployed applications available on demand for rapid processing of large amounts of data and rapid completion of complex calculations, analysis, and transactions. Oracle Forms Services consists of a three-tier architecture: ■ The client tier, contains the Web browser, where the application is displayed. In addition to the browser, Java Runtime Environment JRE and Java Plug-In JPI are required. ■ The middle tier is the application server, where application logic and server software are stored. ■ The database tier is the database server, where database server software is stored. For more information, see the following: 3-22 Oracle Fusion Middleware Concepts Guide ■ Oracle Fusion Middleware Forms Services Deployment Guide ■ Oracle Forms Upgrading Oracle Forms 6i to Oracle Forms 11g

3.10 Oracle SOA Suite

Oracle SOA Suite is a middleware component of Oracle Fusion Middleware. Oracle SOA Suite enables services to be created, managed, and orchestrated into SOA composite applications. Composite applications enable you to easily assemble multiple technology components into one SOA composite application. Oracle SOA Suite plugs into heterogeneous infrastructures and enables enterprises to incrementally adopt SOA. You can administer the components of Oracle SOA Suite from Oracle Enterprise Manager Fusion Middleware Control Console. Software architects and developers can address the complexity of their application and enterprise environments with Oracle SOA Suite. Oracle SOA Suite facilitates the development of enterprise applications as modular business services that can be easily integrated and reused, thus creating a flexible, adaptable enterprise infrastructure. This section describes the following Oracle SOA Suite components: ■ Adapters ■ Oracle Service Bus ■ Oracle Complex Event Processing ■ Oracle Business Rules ■ Oracle Business Activity Monitoring ■ Oracle B2B ■ Oracle BPEL Process Manager ■ Oracle Service Registry ■ Oracle User Messaging Service ■ Human Workflow ■ Oracle Mediator

3.10.1 Adapters

With the growing need for business process optimization, efficient integration with existing back-end applications has become the key to success. To optimize business processes, you can integrate applications by using Java Connector Architecture JCA 1.5 compliant resource adapters. Adapters support a robust, lightweight, highly scalable, and standards-based integration framework, which enables disparate applications to communicate with each other. For example, adapters enables integration of packaged applications, legacy applications, databases, and Web services. Using Oracle JCA adapters insures interoperability by integrating applications that are heterogeneous, provided by different vendors, based on different technologies, and run on different platforms. Oracle JCA Adapters integrate Oracle Fusion Middleware with transport protocols, data stores, and messaging middleware. These adapters include Oracle JCA Adapter for Files, Oracle JCA Adapter for FTP, Oracle JCA Adapter for JMS, Oracle JCA Adapter for Database, Oracle JCA Adapter for Advanced Queuing, Oracle JCA Adapter for MQ Series, Oracle JCA Adapter for Sockets, and Oracle Adapter for Oracle Fusion Middleware Components 3-23 Oracle Applications. Oracle technology adapters are installed as part of Oracle Fusion Middleware.

3.10.2 Oracle Service Bus

Oracle Service Bus, the backbone of SOA, is a service integration platform that lets you turn complex, brittle, point-to-point integration implementations into loosely coupled services that service consumers can use across multiple domains and between heterogeneous endpoints such as Java and Microsoft.Net. Oracle Service Bus lets you quickly adapt to change, scale, manage risk, and achieve higher value with simple, code-free, configuration-based service integration. Key features of Oracle Service Bus, which focus on enhanced productivity, performance and scalability, a unified run time, and adaptive connectivity, include: ■ message transformation ■ service-level agreement SLA enforcement ■ service monitoring ■ quality of service QoS control ■ support for multiple messaging protocols ■ native connectivity with enterprise information systems EIS ■ built-in multi-level security ■ integration with other Oracle products such as Oracle Enterprise Repository, Oracle Service Registry, Oracle Web Services Manager, and Oracle Enterprise Manager

3.10.3 Oracle Complex Event Processing

Databases are best equipped to run queries over finite stored data sets. However, many modern applications require long-running queries over continuous unbounded sets of data. By design, a stored data set is appropriate when significant portions of the data are queried repeatedly and updates are relatively infrequent. In contrast, data streams represent data that is changing constantly, often exclusively through insertions of new elements. It is either unnecessary or impractical to operate on large portions of the data multiple times. Many types of applications generate data streams as opposed to data sets, including sensor data applications, financial tickers, network performance measuring tools, network monitoring and traffic management applications, and clickstream analysis tools. Managing and processing data for these types of applications involves building data management and querying capabilities with a strong temporal focus. To address this requirement, Oracle introduces Oracle Complex Event Processing Oracle CEP, a data management infrastructure that supports streams of structured data records together with stored relations. Oracle CEP formerly known as the Oracle WebLogic Server Event Server is a Java server for the development and deployment of high-performance event driven applications. Oracle CEP supports ultra-high throughput and microsecond latency using JRockit Real Time and provides Oracle CEP Visualizer and Oracle CEP IDE for Eclipse developer tooling for a complete real time end-to-end Java Event-Driven Architecture EDA development platform. 3-24 Oracle Fusion Middleware Concepts Guide You can use Oracle CEP to perform advanced context creation, filtering, correlation and aggregation, and pattern matching on the events of an Oracle Fusion Middleware application. Oracle CEP provides the following principle features: ■ Data and event source support: An Oracle CEP event source identifies a producer of data on which Oracle CQL queries operate. Event sources include data feeds such as wire services and stock tickers, sensors such as temperature, motion, or radio frequency identification RFID detectors, and other devices. Oracle CEP provides a variety of adapters that connect such real-world event sources to your Oracle CQL queries. Oracle CEP adapters support the following event sources: JMS, HTTP publishersubscriber, and file. ■ Context creation: Oracle CEP offers a variety of sliding window operators and views subqueries that allow you to define the temporal or semantic context in which filtering, correlation and aggregation, and pattern matching takes place. Oracle CQL provides a variety of sliding windows, including: range-based time or constant value, tuple-based, and partitioned. ■ Filtering: Using Oracle CQL, you can specify queries that select any of the attributes of the events offered by event sources. You use such queries to filter the event sources to obtain events of interest. Oracle CQL provides a set of operators, expressions, conditions, and statements for this purpose. ■ Correlation and aggregation: Using Oracle CQL, you can perform advanced statistical and arithmetic operations on the attributes of the events offered by event sources. Oracle CQL provides: single-row functions that return a single result row for every row of a queried stream or view; aggregate functions that return a single aggregate result based on a group of tuples, rather than on a single tuple; statistical and advanced arithmetic operations for high-performance scientific and technical computing; and statistical and advanced arithmetic operations based on the java.lang.Math class. In addition, you can easily define custom single-row and aggregate functions. ■ Pattern matching: Using the Oracle CQL MATCH_RECOGNIZE condition, you can succinctly express complex pattern matching operations for a wide variety of tasks such as algorithmic trading, double-bottom detection, non-event detection, and so on. ■ Complex event sink support: An Oracle CQL event sink identifies a consumer of Oracle CQL query results. That is, a consumer of notable events that Oracle CQL queries have extracted from event sources by executing filtering, correlation and aggregation, and pattern matching within various contexts. Typically, noteworthy events are fewer in number and much higher in value than the events offered by event sources. Oracle CEP adapters support the following event sinks: JMS, HTTP publishersubscriber, file, and event beans. ■ Development and run time tools: Oracle CEP provides Oracle CEP IDE for Eclipse, a set of plug-ins for the Eclipse IDE designed to help develop, deploy, and debug Oracle CEP applications. Oracle CEP also provides an advanced run time administration console called Oracle CEP Visualizer. Using Oracle CEP Visualizer, you can manage, tune, and monitor Oracle CEP server domains and the Oracle CEP applications you deploy to them all from a browser. Oracle CEP Visualizer provides a variety of sophisticated run time administration tools, including support for Oracle CQL and EPL rule maintenance and creation. For more information, see Introduction to Oracle Complex Event Processing in the Oracle CEP Getting Started. Oracle Fusion Middleware Components 3-25

3.10.4 Oracle Business Rules

Oracle Business Rules enables dynamic decisions at run time allowing you to automate policies, computations, and reasoning while separating rule logic from underlying application code. This allows more agile rule maintenance and empowers business analysts with the ability to modify rule logic without programmer assistance and without interrupting business processes. Business rules are statements that describe business policies or describe key business decisions. Oracle Business Rules supports Decision Tables. A Decision Table is an alternative business rule format that is more compact and intuitive when many rules are needed to analyze many combinations of property values. You can use a Decision Table to create a set of rules that covers all combinations or where no two combinations conflict. Oracle Fusion Middleware provides support for business rules as follows: ■ In a Decision component. A Decision component is a mechanism for publishing business rules as a reusable service that can be invoked from multiple business processes. You can use business rules to integrate a SOA composite application with Oracle Business Rules. A business rule service component is also called a Decision component. You can add business rules as part of an SCA application or as part of a Business Process Execution Language BPEL process. ■ In a rule-enabled non-SOA Java EE application with Oracle Business Rules. Oracle Business Rules Rules Engine Rules Engine is available as a library for use in a Java EE application non-SOA. The Rules Engine efficiently applies rules to facts and defines and processes rules. For more information, see the following: ■ Oracle Fusion Middleware Users Guide for Oracle Business Rules ■ Oracle Fusion Middleware Developers Guide for Oracle SOA Suite ■ Oracle Fusion Middleware Language Reference Guide for Oracle Business Rules

3.10.5 Oracle Business Activity Monitoring

Oracle Business Activity Monitoring helps businesses improve decision-making processes by aggregating service metrics and delivering actionable information on critical business services. Oracle Business Activity Monitoring provides information to business users by using visual dashboards and alerts. Oracle Business Activity Monitoring also gives users the ability to change the business processes and take corrective action as the business environment changes. Oracle Business Activity Monitoring is a complete solution for building real-time operational dashboards and monitoring and alerting applications over the Web. For more information see the Oracle Fusion Middleware Users Guide for Oracle Business Activity Monitoring.

3.10.6 Oracle B2B

Oracle B2B Business to Business is an e-commerce gateway that enables the secure and reliable exchange of business documents between an enterprise and its trading partners. Oracle B2B is used for typical business-to-business e-commerce, such as buying and selling products and services over the Internet, and also for Health Level 7 support, to enable healthcare systems to communicate with each other. Oracle B2B 3-26 Oracle Fusion Middleware Concepts Guide supports business-to-business document standards, packaging, transports, messaging services, and trading partner and agreement management. The Oracle SOA Suite platform, in which Oracle B2B is a binding component, enables the implementation of end-to-end e-commerce business processes. For more information see Introduction to Oracle B2B in the Oracle Fusion Middleware Users Guide for Oracle B2B.

3.10.7 Oracle BPEL Process Manager

Oracle BPEL Process Manager provides the standard for assembling a set of discrete services into an end-to-end process flow, radically reducing the cost and complexity of process integration initiatives. Oracle BPEL Process Manager enables you to orchestrate synchronous and asynchronous services into end-to-end BPEL process flows. You integrate BPEL processes with external services known as partner links. You also integrate technology adapters and services, such as human tasks, transformations, notifications, and business rules within the process. Oracle BPEL Process Manager is included as a service component in Oracle SOA Suite. Oracle SOA Suite is an essential layer of Oracle Fusion Middleware. It provides a complete set of components for designing, deploying, and managing composite applications. Oracle SOA Suite enables services to be created, managed, and orchestrated into composite applications and business processes. For more information about Oracle BPEL Process Manager, see Oracle Fusion Middleware Developers Guide for Oracle SOA Suite.

3.10.8 Oracle Service Registry

Oracle Service Registry is an easy-to-use, standards-based mechanism for publishing and discovering Web services and related resources like XML Schemas or Extensible Stylesheet Language Transformations XSLT. Oracle Service Registry is a fully compliant implementation of Universal Description, Discovery and Integration UDDI, and is a key component of a SOA. Oracle Service Registry can be deployed in almost any Java environment and works with all popular database systems. In addition, the registry has been designed specifically for enterprise deployment and includes many advanced features that make it easy to configure, deploy, manage and secure. Oracle Service Registry is also easy to customize to support different enterprise user communities. Oracle Service Registry extends the core UDDI standard with unique functionality designed for enterprise applications, including: ■ Advanced Security Allows for defining granular access control for registered components. Component publisher can specify find, get, modify and delete access permissions for every published object. ■ Data Accuracy and Quality Enforcement mechanisms ensures that component registrations are accurate and current. Oracle Service Registry clearly defines responsibility for every registered component. It offers component promotion approval mechanisms for promoting components between development, quality assurance, and production environments ■ Subscription and Notification Oracle Fusion Middleware Components 3-27 Provides automatic notification to registry users about changes to components on which they depend. ■ Selective Replication Allows multiple registries to perform automated propagation for example, between internal and external registries. ■ Advanced Taxonomy Management Allows the enforcement of well-defined taxonomies. ■ Powerful Management Allows granular control, logging, and auditing of the publishing and discovery processes. ■ Performance and Scalability Provides maximum performance and scalability by efficient implementation of Web services stack and database algorithms and by supporting of a load balancing and clustering mechanism. Oracle Service Registry is a platform-independent solution that can easily be deployed in a wide variety of settings. Oracle Service Registry also integrates with LDAP directories, including Oracle Internet Directory and Microsoft ActiveDirectory. For more information, see the Oracle Fusion Middleware Service Registry Guide.

3.10.9 Oracle User Messaging Service

Oracle User Messaging Service supports a simple and reliable way of integrating multi channel messaging into. Oracle User Messaging Service supports both Java APIs as well as Web-Services for integration. The channels supported include SMS, E-Mail, and Instant Messaging as well as Voice messages. Oracle User Messaging Service also supports intelligent messaging whereby the final destination of a message is determined by a users preferences. For more information, see the Oracle Fusion Middleware Developers Guide for Oracle SOA Suite

3.10.10 Human Workflow

Human workflow enables you to model a flow that describes the tasks for users or groups to perform as part of an end-to-end business process flow. Many end-to-end business processes require human interactions with the process. For example, humans may be needed for approvals, exception management, or performing activities required to advance the business process. Human workflow provides the following features: ■ Human interactions with processes, including assignment and routing of tasks to the correct users or groups ■ Deadlines, escalations, notifications, and other features required for ensuring the timely performance of a task human task activity ■ Presentation of tasks to end users through a variety of mechanisms, including a worklist application Oracle BPM Worklist ■ Organization, filtering, prioritization, and other features required for end users to productively perform their tasks 3-28 Oracle Fusion Middleware Concepts Guide ■ Reports, reassignments, load balancing, and other features required by supervisors and business owners to manage the performance of tasks For more information about human workflow, see the Oracle Fusion Middleware Developers Guide for Oracle SOA Suite.

3.10.11 Oracle Mediator

Oracle Mediator provides a lightweight framework to mediate between various components within a composite application. Mediator converts data to facilitate communication between different interfaces exposed by different components, which are wired together to build a SOA composite application. For example, a Mediator can accept data contained in a text file from an application or service, transform it to a format appropriate for updating a database that serves as a customer repository, and then route and deliver the data to that database. Oracle Mediator works as a service component in the SOA Suite to facilitate integration between events and services, where service invocations and events can be mixed and matched. You can use a Mediator component to consume a business event or to receive a service invocation. A Mediator component can evaluate routing rules, perform transformations, validate, and either invoke another service or raise another business event. You can use a Mediator component to handle returned responses, callbacks, faults, and timeouts. For information about Oracle Mediator, see Oracle Fusion Middleware Developers Guide for Oracle SOA Suite.

3.11 Development Tools

This section describes Oracle Fusion Middleware support for building Fusion Web applications with Oracle ADF and the integrated development environment, Oracle JDeveloper. A Fusion Web application is any database-centric application that is targeted to run in the Oracle Fusion Middleware environment. This section includes the following topics: ■ Oracle JDeveloper ■ Oracle Application Development Framework ■ Oracle TopLink ■ Oracle Enterprise Pack for Eclipse ■ Oracle Help

3.11.1 Oracle JDeveloper

Oracle JDeveloper is an integrated development environment IDE for building SOA applications using the latest standards for Java, XML, Web services, and SQL. It supports the complete development lifecycle with integrated features for modeling, coding, debugging, testing, profiling, tuning, and deploying applications. Oracle JDeveloper is the main development platform for the Oracle Fusion Middleware suite of products. It is a cross-platform IDE that runs on Windows, Linux, Mac OS X, and other UNIX-based systems. Oracle JDeveloper provides a visual and declarative development approach and works together with the Oracle ADF to simplify development. Key features of Oracle JDeveloper include: Oracle Fusion Middleware Components 3-29 ■ A consistent development environment that can be used for various technology stacks including Java, SOA, Oracle WebCenter, SQL and PLSQL, HTML, and JavaScript. ■ XML-based application development. ■ A full development and modeling environment for building database objects and stored procedures. ■ A wide range of application deployment options, including Integrated Oracle WebLogic Server, an integrated run time service for running and testing applications before deploying to a production environment. ■ Extension capabilities that enable customization of the IDE based on development needs and add additional functionality. For more information about Oracle JDeveloper, see the Oracle JDeveloper online documentation.

3.11.2 Oracle Application Development Framework

The Oracle ADF is an end-to-end application framework that builds on Java EE standards and open-source technologies to simplify and accelerate implementing service-oriented applications. Oracle ADF is suitable for enterprise developers who want to create applications that search, display, create, modify, and validate data using Web, wireless, desktop, or Web services interfaces. Used in tandem, Oracle JDeveloper 11g and Oracle ADF provide an environment that covers the full development lifecycle from design to deployment, with drag-and-drop data binding, visual UI design, and team development features built in. The core module in the framework is Oracle ADF Model, a declarative data binding facility that implements the latest specification. This specification provides an API for accessing declarative data binding metadata. The Oracle ADF Model layer enables a unified approach to bind any user interface to any business service, without the need to write code. The other modules that make up a Fusion Web application technology stack are: ■ Oracle ADF Business Components, the business layer that simplifies building business services. ■ Oracle ADF Faces rich client, the video layer that offers a library of AJAX-enabled UI components for Web applications built with JavaServer Faces JSF. ■ Oracle ADF Controller, the controller layer that integrates JSF with Oracle ADF Model. The ADF Controller extends the standard JSF controller by providing additional functionality, such as reusable task flows that pass control not only between JSF pages, but also between other activities, for instance method calls or other task flows. In addition to ADF Faces, Oracle ADF also supports using the Swing, JSP, and standard JSF view technologies, as well as Microsoft Excel as a view layer for your application. For more information about these technologies, see Section 3.11.2.6, Oracle ADF Support for Other View Technologies. Oracle also offers the following resources for learning about Oracle ADF: ■ Cue Cards in JDeveloper: JDeveloper cue cards provide step-by-step support for the application development process using Oracle ADF. They are designed to be used either with the included examples and a sample schema, or with your own data. ■ Tutorials on the Oracle Technology Network. 3-30 Oracle Fusion Middleware Concepts Guide For more information, see the Oracle JDeveloper documentation page on the Oracle Technology Network: http:www.oracle.comtechnologydocumentationjdev.html

3.11.2.1 ADF Model Layer

In the model layer, Oracle ADF Model implements the JSR-227 service abstraction called the data control. Data controls abstract the implementation technology of a business service by using standard metadata interfaces to describe the service’s operations and data collections, including information about the properties, methods, and types involved. In Oracle JDeveloper, developers can view that information as icons that they can easily drag and drop onto a page. When the developer drags the representation of the service onto the page, Oracle JDeveloper automatically creates the bindings from the page to the services. At run time, the ADF Model layer reads the information describing the application’s data controls and data bindings from appropriate XML files and implements the two-way connection between the user interface and the application’s business service. Oracle ADF provides ready-to-use data control implementations for the most common business service technologies. Using Oracle JDeveloper and Oracle ADF together provides a declarative, drag-and-drop data binding experience for building user interfaces. Along with support for ADF Business Components application modules, the ADF Model layer also provides support for the following service technologies: ■ Enterprise JavaBeans EJB session beans and JPA Persistence API entities ■ JavaBeans ■ Web services ■ XML ■ CSV files For more information about Oracle ADF Model, see Using Oracle ADF Model in a Fusion Web Application in the Oracle Fusion Middleware Fusion Developers Guide for Oracle Application Development Framework.

3.11.2.2 ADF Business Components

ADF Business Components are prebuilt application objects that accelerate the delivery and maintenance high-performance, highly functional, database-centric services. When building service-oriented Java EE applications, developers implement the core business logic as one or more business services. These back-end services provide clients with a way to query, insert, update, and delete business data as required while enforcing appropriate business rules. ADF Business Components provides a ready-to-use implementation of Java EE design patterns and best practices. Oracle ADF Business Components provides the following key components to simplify building database-centric business services: ■ Entity object An entity object represents a row in a database table and simplifies modifying its data by handling all data manipulation language DML operations. It can encapsulate business logic to ensure that business rules are consistently enforced. Developers can associate an entity object with others to reflect relationships in the underlying database schema to create a layer of business domain objects to reuse in multiple applications. ■ View object Oracle Fusion Middleware Components 3-31 A view object represents a SQL query and simplifies working with its results. Developers use the SQL language to join, project, filter, sort, and aggregate data into the shape required by the end-user task represented in the user interface. This includes the ability to link a view object with other entity objects to create master-detail hierarchies of any complexity. When end users modify data in the user interface, view objects collaborate with entity objects to consistently validate and save the changes. ■ Application module An application module is the transactional component that UI clients use to work with application data. It defines an up datable data model and top-level procedures and functions called service methods related to a logical unit of work related to an end-user task. For more information about Oracle ADF Business Components, see Getting Started with ADF Business Components in the Oracle Fusion Middleware Fusion Developers Guide for Oracle Application Development Framework.

3.11.2.3 ADF Controller

In the controller layer, where handling page flow of the Web applications is a key concern, ADF Controller provides an enhanced navigation and state management model on top of JSF. JDeveloper supports declarative creation of task flows that can manage application control between different types of activities, such as pages, methods on managed beans, declarative case statements, or calls to other task flows. For more information about Oracle ADF Controller, see Getting Started with ADF Task Flows in the Oracle Fusion Middleware Fusion Developers Guide for Oracle Application Development Framework.

3.11.2.4 ADF Faces Rich Client

ADF Faces rich client ADF Faces for short, is a set of standard JSF components that includes built-in AJAX functionality. AJAX is a combination of asynchronous JavaScript, dynamic HTML DHTML, XML, and an XmlHttpRequest communication channel. This combination allows requests to be made to the server without fully re-rendering the page. While AJAX allows client-like applications to use standard Internet technologies, JSF provides server-side control, which reduces the dependency on an abundance of JavaScript often found in typical AJAX applications. ADF Faces provides over 100 components, including hierarchical data tables, tree menus, in-page dialogs, accordions, dividers, and sortable tables. ADF Faces also provides ADF Data Visualization components, which are Flash- and SVG-enabled components capable of rendering dynamic charts, graphs, gauges, and other graphics that can provide a real-time view of underlying data. Each component also supports customization and skinning, along with internationalization and accessibility. To achieve these front-end capabilities, ADF Faces components use a rendering kit that handles display of the component and also provides the JavaScript objects needed for the functionality. This built-in support enables developers to build applications without needing extensive knowledge of the individual technologies on the front or back end. For more information about ADF Faces, including the architecture and detailed information about each of the components, see Introduction to ADF Faces Rich Client in the Oracle Fusion Middleware Web User Interface Developers Guide for Oracle Application Development Framework. 3-32 Oracle Fusion Middleware Concepts Guide

3.11.2.5 Oracle ADF Security

Oracle ADF Security ADF Security is a framework that provides a security implementation that is based on JAAS. The Oracle ADF implementation of JAAS is permission-based. Oracle JDeveloper supports making permission grants to enable fine-grained security for Oracle ADF resources of the Fusion Web application. For more information about Oracle ADF Security, see Enabling ADF Security in a Fusion Web Application in the Oracle Fusion Middleware Fusion Developers Guide for Oracle Application Development Framework.

3.11.2.6 Oracle ADF Support for Other View Technologies

Along with ADF Faces, Oracle ADF also supports the following view technologies: ■ Apache MyFaces Trinidad: This is the open source code donation from Oracle to the Apache Software Foundation. ADF Faces components are based on these Trinidad components. ■ Java Swing and ADF Swing: ADF Swing is the development environment for building Java Swing applications that use the ADF Model layer. ■ ADF Mobile: This is a standards-based framework for building mobile applications built on the component model of JSF. ■ ADF Desktop Integration: Integration is supported through Microsoft Excel to create spreadsheets that are bound to data using the same binding principles as do other view technologies.

3.11.2.7 Oracle ADF Swing

Oracle Application Development Framework Swing Oracle ADF Swing consists of Java classes and an API to handle the binding of Swing components to business services and to simplify the task of creating databound forms in a desktop application. JDeveloper and Oracle ADF Swing provide comprehensive support for developing desktop applications, which includes features such as form creation wizards, form layout editor, and drag-and-drop data binding with business components. For more information about Oracle ADF Swing, see the Oracle JDeveloper online documentation available from within the Oracle JDeveloper application.

3.11.2.8 Oracle ADF Mobile

Oracle Application Development Framework Mobile Oracle ADF Mobile is a standards-based framework that enables the rapid development of enterprise mobile applications. The current version of Oracle ADF Mobile extends Oracle ADF to browsers running on mobile devices. Oracle ADF Mobile is built upon the component model of JSF, which enables development of applications for mobile browsers. Oracle ADF Mobiles mobile-specific extensions to JSF enables development of mobile applications using the same methodologies for developing JSF applications for the desktop. Oracle ADF Mobile application development uses only mobile JSF pages that consist of Apache MyFaces Trinidad components. Currently, Oracle ADF Mobile supports more than 60 Trinidad components for a component set that renders appropriately to the screens of mobile devices. For more information, see the Apache MyFaces Trinidad home page at http:myfaces.apache.orgtrinidadindex.html . For more information about Oracle ADF Mobile, see the Oracle Fusion Middleware Mobile Browser Client Developers Guide for Oracle Application Development Framework. Oracle Fusion Middleware Components 3-33

3.11.2.9 Oracle ADF Desktop Integration

Oracle Application Development Framework Desktop Integration Oracle ADF Desktop Integration provides tools and components to integrate Microsoft Excel workbooks with Web applications built using Oracle ADF. At run time, Excel workbooks configured by the Oracle ADF Desktop Integration module can invoke Oracle ADF components to manage data retrieved from Web applications. For more information, see the Oracle Fusion Middleware Desktop Integration Developers Guide for Oracle Application Development Framework.

3.11.3 Oracle TopLink

Oracle TopLink is an advanced, object-persistence and object-transformation framework that provides development tools and run time capabilities that reduce development and maintenance efforts, and increase enterprise application functionality. Oracle TopLink builds high-performance applications that store persistent object-oriented data in a relational database. It successfully transforms object-oriented data into either relational data, or Extensible Markup Language XML elements. Oracle TopLink is used to design, implement, deploy, and optimize an advanced, object-persistence and object-transformation layer that supports a variety of data sources and formats, including the following: ■ Relational: For transactional persistence of Java objects to a relational database accessed using Java Database Connectivity JDBC drivers. ■ Object-Relational Data Type: For transactional persistence of Java objects to special purpose structured data source representations optimized for storage in object-relational data type databases such as Oracle Database. ■ Enterprise information system EIS: For transactional persistence of Java objects to a non-relational data source accessed using a JCA adapter, and any supported EIS record type, including indexed, mapped, or XML. ■ XML: For non-transactional, nonpersistent in-memory conversion between Java objects and XML Schema Document XSD-based XML documents using Java Architecture for XML Binding JAXB. Oracle TopLink supports EJB 3.0 in Java EE and Java SE environments including integration with a variety of application servers, such as Oracle WebLogic Server and Oracle Containers for J2EE OC4J 10g 10.1.3.4.x. Oracle TopLink also includes support for EJB 2.n container-managed persistence CMP in OC4J. Oracle TopLink provides a suite of development tools, such as Oracle JDeveloper TopLink Editor, Eclipse Dali, and Oracle TopLink Workbench, to capture and define object-to-data source and object-to-data representation mappings in a metadata format. Some of the key features of Oracle TopLink are the following: ■ Metadata-based architecture: Plain Old Java Objects POJO, Container-Managed Persistence CMP, as well as Java Persistence API JPA, Java Architecture for XML Binding JAXB, Service Data Objects SDO, and Web services provided by EclipseLink. ■ Advanced mapping support. ■ Optimization and performance tuning. 3-34 Oracle Fusion Middleware Concepts Guide ■ Object caching support, including cluster integration for some application servers such as Oracle Application Server. ■ Query capability including TopLink Expressions framework, Java Persistence Query Language JP QL, Enterprise JavaBeans Query Language EJB QL, and native SQL. ■ Just-in-time reading. ■ Object-level transaction support and integration with popular application servers and databases. ■ Optimistic and pessimistic locking options and locking policies. ■ Visual design tools. For more information about Oracle TopLink, see Introduction to TopLink in the Oracle Fusion Middleware Developers Guide for Oracle TopLink.

3.11.4 Oracle Enterprise Pack for Eclipse

Oracle Enterprise Pack for Eclipse OEPE is a set of plug-ins designed to support Java EE development, especially if the following technologies are present: ■ Eclipse IDE ■ Oracle WebLogic Server ■ Oracle Database Key features of OEPE include: ■ Oracle WebLogic Server support: OEPE provides features to develop, deploy and debug Oracle WebLogic Server applications: – Faster application development with virtual enterprise archive EAR technology. – Remote deployment of applications. – Deployment descriptor editing using the graphical design view. – Support for the Oracle WebLogic Server shared library. – Support for XMLBeans. – Support for EJBGen. – Support for Web services: OEPE enables building of enterprise-class Web services that employ standard Web service technologies, such as XML, SOAP, and WSDL. OEPE simplifies Web service development by allowing developers to focus on application logic, rather than the complex implementation details traditionally required by these technologies. ■ Oracle Database support: OEPE provides the means to easily connect to, create, explore, and query Oracle databases. Support includes database visualization through the Data Source Explorer view and data descriptive language DDL generation. ■ JSF facelets tools: Facelets enable development of JSF pages using XHTML instead of JSP. ■ Support for object-relational mappings: OEPE enables creation of a persistence layer that uses EJB 3.0 JPA, and provides the means to do the following: – Configure the persistence provider for JPA projects Oracle Fusion Middleware Components 3-35 – Generate JPA entities – Annotate classes – Use entity diagram editors – Use a SQL schema viewer – Use the Spring framework ■ Web page editors. For more information about OEPE, see: http:download.oracle.comdocscdE14545_ 01helporacle.eclipse.tools.common.dochtmlindex.html

3.11.5 Oracle Help

Oracle Help provides the means for developing and displaying HTML-based help systems for Java applications and Web applications. Authors can create a single help system that can be displayed - without modification - both in a Java environment, using Oracle Help for Java, and in a Web environment, using Oracle Help for the Web. Oracle Help for the Web is available in two formats: Oracle Help for the Web - UIX and Oracle Help for the Web – Rich Client. Oracle Help for Java OHJ is a set of Java components, a Java API, and a file formats specification for developing and displaying HTML-based help content in a Java environment. OHJ is designed primarily for displaying help for Java applications, although it can also be implemented as a standalone document viewer for use in a Java environment. Oracle Help for the Web – UIX OHW-UIX is a Java servlet and a file formats specification for developing and delivering HTML-based help content in a Web environment. OHW-UIX can be used to provide context-sensitive help for Web applications or as a means for processing and displaying structured views of independent HTML content on the Web. Oracle Help for the Web – Rich Client OHW-RC, similar to OHW-UIX, delivers HTML-based Help content in a Web environment. It uses Oracle Application Development Framework Oracle ADF, which is based on the JavaServer Faces JSF technology, to build a user interface that follows Oracles Browser Look And Feel Plus BLAF+ guidelines. For more information about Oracle Help, see Introduction to Oracle Help in the Oracle Fusion Middleware Developers Guide for Oracle Help.

3.12 Oracle HTTP Server

Oracle HTTP Server OHS is the underlying deployment platform for all programming languages and technologies that Oracle Fusion Middleware supports. It provides a Web listener and the framework for hosting static and dynamic pages and applications over the Web. Based on the proven technology of the Apache 2.2.10 infrastructure, OHS includes significant enhancements that facilitate load balancing, administration, and configuration. It also includes a number of enhanced modules, or mods, which are extensions to the HTTP server that extend its functionality for other enterprise applications and services. OHS is, and includes modules developed specifically by Oracle. The features of single sign-on, clustered deployment, and high availability enhance the operation of the Oracle HTTP Server. 3-36 Oracle Fusion Middleware Concepts Guide OHS allows developers to program their sites in a variety of languages and technologies, such as Java, Perl, C, C++, PHP, and PLSQL. Additionally, it can serve as either a forward or reverse proxy server. For more information about OHS see the Oracle Fusion Middleware Administrators Guide for Oracle HTTP Server.

3.13 Oracle Web Cache