This chapter provides an introduction to Oracle JCA compliant adapters, which enable you to integrate your business applications, and which provide a robust, lightweight, highly-scalable and standards-based integration framework for disparate applications to communicate with each other. The chapter provides context for the JCA Adapters within today's business application processing.
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 JCA 1.5 compliant resource adapters. Adapters support a robust, light weight, highly scalable, and standards-based integration framework, which enables disparate applications to communicate with each other. For example, adapters enable you to integrate packaged applications, legacy applications, databases, and Web services. Using Oracle JCA Adapters, you can ensure interoperability by integrating applications that are heterogeneous, provided by different vendors, based on different technologies, and run on different platforms.
For more information on further configurations, other adapters, refer to the guides in Related Documents.
A certification matrix relevant for systems requirements for Adapters can be found on the Adapters Home page on the Oracle Technology Network, at http://www.oracle.com/technetwork/middleware/ias/downloads/fusion-certification-100350.html
For a list of current adapters, see http://www.oracle.com/technetwork/middleware/adapters/overview/index-083423.html
This chapter includes the following sections:
This topic discusses the features of Oracle JCA Adapters.
Oracle JCA Adapters provide the following benefits:
Provide a connectivity platform for integrating complex business processes: Adapters integrate mainframe and legacy applications with enterprise resource planning (ERP), customer relationship management (CRM), databases, and messaging systems. Oracle provides adapters to connect various packaged applications, such as SAP and Siebel, and databases. In addition, adapters integrate middleware messaging systems, such as MQSeries and Oracle Advanced Queuing, and legacy applications, such as CICS and Tuxedo, to provide a complete solution.
Support open standards: Adapters are based on a set of standards such as J2EE Connector Architecture (JCA) version 1.5, Extensible Markup Language (XML), and Web Service Definition Language (WSDL). The support for standards reduces the learning curve of a user and eliminates the dependency of users on a single vendor.
Service Component Architecture (SCA) assembly model: Provides the service details and their interdependencies to form composite applications. SCA enables you to represent business logic as reusable service components that can be easily integrated into any SCA-compliant application. The resulting application is known as an SOA composite application. The specification for the SCA standard is maintained by the Organization for the Advancement of Structured Information Standards (OASIS).
Implement a Service-Oriented Architecture (SOA): The support for open standards enables adapters to implement an SOA, which facilitates loose coupling, flexibility, and extensibility.
Use native APIs: Adapters support multiple ways of interfacing with the back-end system and provide various deployment options. Using native APIs, adapters communicate with the back-end application and also translate the native data to standard XML, which is provided to the client.
Model data: Adapters convert native APIs to standard XML and back, based on the adapter metadata configured during design time. Adapter configurations are defined during design time, which is used by runtime components.
Facilitate real-time and bidirectional connectivity: Adapters offer bidirectional communication with various back-end systems. This includes sending requests to back-end systems and receiving a response. Adapters also support the real-time event notification service. This service notifies about the back-end events associated with successful back-end transactions for creating, deleting, and updating back-end data. This two-way connectivity ensures faster, flexible, efficient integration, and reduces the cost of integration.
Maximize availability: Oracle JCA Adapters are based on the J2CA 1.5 specification. Adapters can, therefore, fully leverage the scalability and high availability of the underlying Oracle Application Server platform.
For more information, see Developing Resource Adapters for Oracle WebLogic Server.
Provide easy-to-use design-time tools: Adapters use design-time tools that provide a graphical user interface (GUI) to configure and administer adapters for fast implementation and deployment. In addition, the tools let you to browse, download, and configure back-end schemas.
Support seamless integration with Oracle Application Server components: Adapters integrate with Oracle Fusion Middleware. Adapters integrate with the JCA Binding Component of the Oracle Fusion Middleware platform, thereby seamlessly integrating with other service engines and binding components.
This topic provides information about types of Oracle JCA Adapters.
Oracle JCA Adapters include:
Figure 1-1 illustrates the different types of adapters.
Figure 1-1 Types of Oracle JCA Adapters
Oracle technology adapters integrate Oracle Application Server and Oracle Fusion Middleware components such as Oracle BPEL Process Manager (Oracle BPEL PM) or Oracle Mediator components to file systems, FTP servers, database queues (advanced queues, or AQ), Java Message Services (JMS), database tables, and message queues (MQ Series).
These adapters include:
Oracle technology adapters are installed as part of Oracle Fusion Middleware.
This section includes the following topics:
For more information, see:
Oracle technology adapters are based on J2EE Connector Architecture (JCA) 1.5 standards and deployed as a resource adapter in the same Oracle WebLogic Server as Oracle Fusion Middleware. Oracle Adapter for Oracle Applications has a similar architecture as that of the Oracle technology adapters. Figure 1-2 illustrates the architecture of Oracle technology adapters.
Figure 1-2 Oracle Technology Adapters Architecture
During design time, Oracle technology adapters use Oracle JDeveloper (JDeveloper) to generate the adapter metadata. Binding configuration files consist of J2CA-centric XML markup. The J2CA binding configuration files are used by the JCA Binding Component to seamlessly integrate the J2CA 1.5 resource adapter with Oracle Fusion Middleware.
For more information about integration of Oracle technology adapters with Oracle Fusion Middleware, see Adapter Integration with Oracle Fusion Middleware.
JDeveloper provides accessibility options, such as support for screen readers, screen magnifiers, and standard shortcut keys for keyboard navigation. You can also customize JDeveloper for better readability, including the size and color of fonts and the color and shape of objects. For information and instructions on configuring accessibility in JDeveloper, see “Oracle JDeveloper Accessibility Information" in Developing Applications with Oracle JDeveloper.
Example of generating WSDL and binding configuration files for Oracle JCA Adapter for Database:
By using JDeveloper, you can configure Oracle JCA Adapter for Database. This adapter helps you to perform data manipulation operations, call stored procedures or functions, and publish database events in real time. To configure adapter definitions, drag and drop Database Adapter from the Components window to the External References swim lane.
Figure 1-3 shows how to browse through the Import Tables window to select the required tables for the adapter.
Figure 1-3 Browsing for Required Tables
Figure 1-4 shows how to specify the WSDL settings for Oracle JCA Adapter for Database.
Figure 1-4 Specifying WSDL Settings
Next, you must establish a database connection, select an operation type, and select the required tables. The runtime connection parameters are specified in the
weblogic-ra.xml file and linked to a Java Naming and Directory Interface (JNDI) name, which is specified during design time. Figure 1-5 shows the creation of a new database connection.
Figure 1-5 Creating a New Database Connection
Finally, JDeveloper generates a WSDL file and a binding configuration file with the J2CA binding for the Oracle JCA Adapter for Database, as shown in Figure 1-6.
Figure 1-6 Structure of a JCA File
The runtime component of Oracle technology adapters is the J2CA 1.5 resource adapter for the specific back-end application. Oracle technology adapters are deployed in the J2CA container of the Oracle WebLogic Server. Oracle Fusion Middleware integrates with these J2CA 1.5 adapters through the JCA Binding Component, which converts Web service messages into J2CA interactions and back.
Oracle Fusion Middleware uses the JCA Binding Component to integrate the request-response service (J2CA outbound interaction) with a SCA composite reference and publish the adapter events to a SCA composite service.
For more information about integration with Oracle Fusion Middleware, see Adapter Integration with Components .
Fusion Middleware Control provides accessibility options for the pages on which you monitor and manage applications. Fusion Middleware Control supports screen readers and provides standard shortcut keys to support keyboard navigation. You can also view the console pages in high contrast or with large fonts for better readability. For information and instructions on configuring accessibility in Fusion Middleware Control, see "Using Oracle Fusion Middleware Accessibility Options" in Administering Oracle Fusion Middleware.
Oracle technology adapters are deployed as J2CA 1.5 resource adapters within the same Oracle WebServer container as that of Oracle Fusion Middleware during installation. Although Oracle technology adapters are physically deployed as J2CA 1.5 resource adapters, their logical deployment involves creating the connection factory entries for the J2CA 1.5 resource adapter by editing the
weblogic-ra.xml file and using JDeveloper during design time. By using JDeveloper, you specify the JNDI name, which acts as a placeholder for the connection used when your composite is deployed to the Oracle WebLogic Server. This placeholder enables you to use different databases for development and later production. However, for the logical deployment changes (that is, only if you are creating a new outbound connection) to take effect, the WebLogic Server container process should be updated. However, if you are updating any outbound connection property for an existing JNDI, then you must restart the Oracle WebLogic Server. To avoid a server restart when you update an outbound connection property for an existing JNDI, refer to Adding or Updating an Adapter Connection Factory.
Legacy adapters integrate Oracle Application Server with legacy and mainframe applications using legacy communication protocols.
These adapters include:
OracleAS Adapter for Tuxedo
OracleAS Adapter for CICS
OracleAS Adapter for VSAM
OracleAS Adapter for IMS/TM
OracleAS Adapter for IMS/DB
Legacy adapters are available as part of the OracleAS Adapters CD.
This section includes the following topics:
Legacy adapters include the following components in the architecture
Figure 1-7 illustrates the architecture of legacy adapters.
Figure 1-7 Legacy Adapter Architecture
Changed Data Capture (CDC) adapters also have the same architecture.
Oracle Connect is a component that resides on the legacy and mainframe platforms. It consists of native adapters for communicating with the mainframe application and data stores. Oracle Connect consists of the following components:
Server Processes: Oracle Connect consists of multiple servers to process client requests.
Native Adapters: Oracle Connect consists of various embedded native adapters to communicate with Tuxedo and IMS-TM transaction systems, and database drivers to communicate with various databases and file systems on mainframe systems such as VSAM and IMS-DB. The native adapters convert application structures, such as the legacy COBOL applications data, to and from XML. The XSD schema is used for precise mapping between mainframe data and standard XML data.
Daemon: Daemon is an RPC-based listener that manages and maintains multiple server configurations. It runs on every computer running Oracle Connect and handles user authentication and authorization, connection allocation, and server process management.
When a client requests for a connection, the daemon allocates a server process to handle this connection. The allocated server process may be a new process or any process that has been running. Further communication between the client session and the server process is direct and does not involve the daemon. However, the daemon is notified when the connection ends and the server process is either killed or being used by another client.
The daemon supports multiple server configurations called workspaces. Each workspace defines accessible data sources, applications, environment settings, security requirements, and server allocation rules. The daemon authenticates clients, authorizes requests for a server process within a certain server workspace, and provides clients with the required servers. The allocation of servers by the daemon is based on the workspace that the client uses. Thus, a client can access a data source using one workspace, where a server process is allocated from an existing pool of servers, or the client can access a data source using a different workspace, where a new server process is allocated for each client request. A fail-safe mechanism enables the specification of alternate daemons, which function as a standby for high availability.
Repository: Oracle Connect supports a repository for storing the XML-based schema and configuration information. There is a single repository for each Oracle Connect instance. The repository stores the following information:
Oracle Connect configuration settings (including the Daemon settings to control client/server communication)
User profiles to enable single sign-on to multiple back-end applications and data sources
Adapter metadata for each adapter, which includes adapter request-response and event services
Oracle Studio is the design-time tool for configuring the Oracle AS Adapters for mainframes. It enables you to configure the services, events, and connection information for native adapters. The configuration information is stored in the Oracle Connect repository on the legacy or mainframe application. In addition, it enables you to do management and monitoring of Oracle Connect. The Oracle Studio is available only on the Windows platform. The Oracle Studio is based on the Eclipse GUI framework.
The J2EE Connector Architecture (J2CA) adapter forwards the WebLogic Server application client requests to the Oracle Connect application. Oracle Connect communicates with the mainframe application and forwards the response back to the J2CA adapter. The response might contain the transaction data or might contain the exception data if the request generated an error. Oracle Fusion Middleware integrates with Oracle Connect through the J2CA Legacy adapter.
To configure legacy adapters during design time, use Oracle Studio, as shown in Figure 1-8.
Figure 1-8 Oracle Studio
Example of configuring OraleAS Adapter for Tuxedo:
Figure 1-9 Configuring OracleAS Adapter for Tuxedo
Figure 1-10 Selecting the Types of Interactions for OracleAS Adapter for Tuxedo
During runtime, WSDL files generated during design time are consumed by the integrating components. For example, Oracle Fusion Middleware uses the JCA Binding Component to integrate the request-response service (J2CA outbound interaction) with a BPEL Invoke activity and to publish the events to a BPEL process receive activity.
For more information, see Adapter Integration with Oracle Fusion Middleware.
Packaged-application adapters integrate the Oracle Application Server with various packaged applications, such as SAP and Siebel.
In SOA Suite 11g, Oracle provided the following enterprise application adapters:
OracleAS Adapter for PeopleSoft
OracleAS Adapter for SAP R/3
OracleAS Adapter for Siebel
Oracle AS Adapter for J.D.Edwards EnterpriseOne and OneWorld
These adapters are downloaded and installed separately from the standard SOA Suite install. Also, all of the design-time tasks for these adapters are performed by the Oracle Application Explorer to generate the required WSDL and schema artifacts and these are then imported into JDeveloper.
Note the distinction, the older Oracle iWay adapter is for the JDE EnterpriseOne and JDE OneWorld products, whereas the new JDE Adapter is only for JDE World product.
In SOA Suite 12.1.3, there are two "out of the box" Adapters that are available with SOA Suite.
Oracle Adapter for SAP, and
Oracle Adapter for J.D.Edwards World
The design-time for these adapters, similar to other technology adapters, is Oracle JDeveloper.
The adapter components are available "out of the box" in the Components from where user can model integrations with the respective applications. Refer to the Licensing Document for licensing information on these adapters.
This section includes the following topics:
Packaged-application adapters can be deployed as J2EE Connector Architecture (J2CA) 1.5 resource adapters or as Web service servlets within the Oracle WebLogic Server container. Packaged-application adapters support the Web Service Definition Language (WSDL) and Simple Object Access Protocol (SOAP) interface, in addition to a J2CA interface. J2CA and Web service deployments of packaged-application adapters should have a repository project. In J2CA deployment, the resource adapter points to a repository project that can contain multiple back-end connection objects. The deployment descriptor,
weblogic-ra.xml, points to the J2CA repository project and the connection name to access within the J2CA repository project. In the WSDL deployment, the WSDL repository project consists of a set of WSDL files that describe the adapter metadata.
Only the following packaged-application adapters support WSDL and SOAP extensions in this release:
OracleAS Adapter for SAP
OracleAS Adapter for Siebel
OracleAS Adapter for Peoplesoft
OracleAS Adapter for J.D. Edwards
The architecture of packaged-application adapters consists of OracleAS Adapter Application Explorer (Application Explorer), J2CA 1.5 resource adapter, and Business Services Engine (BSE).
Figure 1-11 illustrates the architecture of packaged-application adapters:
Figure 1-11 Packaged-Application Adapters Architecture
This section describes the components of the packaged-application adapter architecture.
This section includes the following topics:
Application Explorer is a Java swing-based design-time tool for configuring packaged-application adapters. Using Application Explorer, you can configure the back-end application connection, browse the back-end application schemas, and expose these schemas as adapter services. Application Explorer is shipped with packaged application-specific plug-ins for browsing the back-end application-specific metadata.
You can use Application Explorer to create repository projects for the Oracle Adapter. Each repository project can consist of multiple back-end application connections. The schemas are represented as either XML Schema Definition (XSD) for the Oracle Adapter J2CA interface or BSE or as a WSDL with SOAP binding.
Application Explorer works with BSE, which is deployed in the Oracle WebLogic Server container of the Oracle Application Server. BSE uses SOAP as a protocol for accepting requests from clients, interacting with the back-end application, and sending responses from the back-end application back to clients.
Application Explorer is used to configure packaged-application adapters during design time. This tool is used to create a repository project for the J2CA 1.5 resource adapter, which contains a list of back-end connections. Application Explorer exposes back-end metadata as XSD and WSDL with J2CA extensions. The XSD metadata is used by the Oracle WebLogic Server application clients for integration through the J2CA Common Client Interface (CCI) Application Programming Interface (API). The WSDL with J2CA extension is used for integration with Business Process Execution Language for Web Services (BPEL) Process Manager. The BSE metadata can be defined as WSDL or SOAP.
Figure 1-12 shows the Application Explorer.
Figure 1-12 Application Explorer
Example of generating XML Request Schema for OracleAS Adapter for SAP
You can use Application Explorer to establish a connection for OracleAS Adapter for SAP. To establish such a connection, you must first define a target to OracleAS Adapter for SAP, as shown in Figure 1-13 and Figure 1-14.
Figure 1-13 Selecting OracleAS Adapter for SAP
Figure 1-14 Defining a Target to OracleAS Adapter for SAP
After you have explored the SAP business function library and have selected an object, you can use Application Explorer to create the XML request schema and the XML response schema for that function. To view the XML for each schema type, select the required tab, as shown in Figure 1-15:
Figure 1-15 Viewing the XML Schema
The runtime components of packaged-application adapters include J2CA 1.5 resource adapter, BSE, and servlet. The WebLogic Server application clients use the CCI API to directly interface with the J2CA 1.5 resource adapter. The J2CA 1.5 resource adapter integrates with Oracle Fusion Middleware through the JCA Binding Component. During runtime, the JCA Binding Component translates the Oracle Fusion Middleware service requests to J2CA calls and back based on the adapter metadata (WSDL and binding configuration) configured during design time.
During runtime, the WSDL files generated during design time are consumed by the integrating components. For example, Oracle Fusion Middleware uses the JCA Binding Component to integrate the request-response service (J2CA outbound interaction) with a BPEL process invoke activity and to publish adapter events to a BPEL process receive activity.
For more information about integrating with Oracle Fusion Middleware, see Adapter Integration with Oracle Fusion Middleware.
Packaged-application adapters are deployed as J2CA 1.5 resource adapters within the WebLogic Server J2CA container during installation. The adapter must be in the same WebLogic Server container as Oracle BPEL PM for integration.
You can integrate any Web service client with the BSE servlet.
BSE is deployed as a servlet within the WebLogic Server container during installation. BSE can be remotely located and need not be in the same container as the Oracle BPEL PM.
Oracle Applications are built on a unified information architecture that consolidates data from Oracle and non-Oracle applications and enables a consistent definition of customers, suppliers, partners, and employees across the entire enterprise. This results in a suite of applications that can give you information, such as current performance metrics, financial ratios, profit and loss summaries. To connect Oracle Applications to non-Oracle applications, you use Oracle E-Business Suite Adapter.)
Oracle Adapter for Oracle Applications (E-Business Suite) provides comprehensive, bidirectional, multimodal, synchronous, and asynchronous connectivity to Oracle Applications. The adapter supports all modules of Oracle Applications in Release 12 and Release 11i including selecting custom integration interface types based on the version of Oracle E-Business Suite.
The architecture of the Oracle Adapter for Oracle Applications (E-Business Suite) is similar to Oracle technology adapters.
This topic provides information about types of Oracle JCA Adapters services.
Adapters provide the following types of services to facilitate communication between applications:
Adapters support the synchronous request-response service. The adapters receive requests from adapter clients, translate these requests into the native back-end data format, and call the appropriate method in the back-end application. In addition, the request-response service retrieves the back-end response to the JCA Binding Component after performing reverse translation. In J2CA terminology, this type of service is also known as outbound interaction.
You can use the request-response service to create, delete, update, and query back-end data, and to call back-end workflows and transactions. For example, a WebLogic Server application client can use OracleAS Adapter for SAP to create a customer within the SAP application.
Figure 1-16 illustrates the request-response service.
Figure 1-16 Request-Response Service
Adapters support the event-notification service, which is an asynchronous communication paradigm. In J2CA terminology, this type of service is also known as inbound interaction.
Adapters either listen or poll for back-end event changes. When listening for events, an adapter registers as a listener for the back-end application that is configured to push events to the adapter. The adapter can also poll the back-end application, which is usually a database or file, for the events required by the client application.
You can use the event-notification service to keep a track of back-end events associated with successful back-end transactions for creating, deleting, and updating back-end data.
Figure 1-17 illustrates the event-notification service.
Figure 1-17 Event-Notification Service
The adapter metadata definition stores information about the back-end connection and schemas for business objects and services. Adapters consist of a design-time component for browsing and storing metadata and a runtime component for running services. The adapter metadata definitions are generated as XML Schema Definition (XSD), WSDL, and binding configuration files. Figure 1-18 illustrates the metadata interaction.
Figure 1-18 Metadata Service