Contents
This is part of 1Z0-451: Oracle SOA Foundation Practitioner Exam
Describe adapter concepts and framework
Overview
* Oracle Adapters use JCA technology to connect external systems to the Oracle SOA Suite.
* Based on open standards such as JCA, XML, WSDL.
* Assembled with SCA model.
Adapter Types
* Technology adapters
– Installed as part of Oracle Fusion Middleware.
* Legacy adapters
* Packaged-application adapters
* Oracle application adapters
Service Types
Request-Response (Outbound Interaction) Service
* Support synchronous request-response service.
* Used to:
– CRUD back-end data
– call back-end workflows and transactions
Event Notification (Inbound Interaction) Service
* Support asynchronous event-notification service.
* Listen or poll for back-end event changes.
* Used to keep track of back-end events.
Metadata Service
Technology Adapters
* Files
* FTP
* Sockets
* Database Adapter
* Java Messaging Service (JMS)
* BAM
* Advanced Queuing (AQ)
* Message Queuing (MQ) Series
* See here for details.
Architecture
Design-Time Components
* Use JDev to generate adapter metadata.
– Binding config files consist of J2CA-centric XML markup.
– Binding config files used by JCA Binding Component to seamlessly integrate the JCA 1.5 resource adapter with Oracle Fusion Middleware.
Run-Time Components
* Adapter run-time component is the JCA 1.5 resource adapter for the specific back-end application.
* Deployed in JCA container of the WebLogic Server.
* Integration with OFM is achieved through the JCA Binding Component, which converts Web service messages to JCA interactions and back. See here for more details.
Deployment
* Technology adapters are deployed as JCA 1.5 resource adapters within the same WebLogic Server container as that of OFM.
* JNDI names are used at design time with JDev. Need to setup JNDI at deployment.
Legacy Adapters
* Tuxedo
* CICS
* VSAM
* IMS/TM
* IMS/DB
Architecture
Oracle Connect
* 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.
* It consists of:
– Server processes: process client requests.
– Native adapters: to communicate with Tuxedo and IMS-TM txn systems.
– Daemon: RPC-based listener that manages and maintains multiple server configurations.
– Repository: one repository per Oracle Connect instance to store XML-based schema and config info.
Oracle Studio
* Oracle Studio is a design time tool for configuring the Oracle AS Adapters for mainframes.
* Enables you to configure the services, events, and connection information for native adapters.
* Enables you to do management and monitoring of Oracle Connect.
* Based on Eclipse and available on Windows platform only.
Packaged-Application Adapters
* Available as part of the OracleAS Adapters CD.
Packaged-Application Adapters
* SAP R/3
* PeopleSoft
* Siebel
* J.D. Edwards OneWorld
Architecture
Oracle Adapter for Oracle Applications
* a.k.a E-Business Suite Adapter
Describe Technology adapters: File, Database, JMS, etc
* See here for a list of adapter related books.
* Provides comprehensive, bidirectional, multimodal, synchronous, and asynchronous connectivity to Oracle Applications.
File/FTP Adapter
Supported operations
* Read File
– Resides in the beginning or end of a process
– A separate thread is spawn in order to poll file
* Write File
* Synchronous Read File
– Resides in the middle of a process (not begin/end)
– No separate thread is spawn. The process stops and wait for the file content
* List Files
Features
* File formats
– XML
– Delimited
– Fixed positional
– Binary
– COBOL Copybook data
– opaque (e.g. JPEGs)
* FTP Servers
– Supports most RFC 959 compliant FTP servers on all platforms.
– Supports SFTP server version 4 or later.
* Inbound and outbound interactions
* File debatching: publish messages in a specific number of batches.
* File ChunkedRead: uses an invoke activity within a while loop to process the target file (usually large file).
* File Sorting
– Use a synchronous operation
– Add the following property to the inbound JCA file:
<property name="ListSorter" value="oracle.tip.adapter.file.inbound.listing.TimestampSorterAscending"/> <property name="SingleThreadModel" value="true"/>
* Dynamic outbound directory and file name specification.
* Security
* Nontransactional
* Proxy support:
– make sure proxy server supports FTP traffic through HTTP connection.
– only passive data connections are supported, in which FTP client tells FTP server which port to connect back.
* No payload support
– select Do not read file content option.
* Large payload support
– select Read File as Attachment option.
* File based triggers
* pre-processing and post-processing of files
– Use pipeline and valves
* Error handling
* Threading Model
– default threading model:
– modified threading model: single threaded model, partitioned threaded model.
* Performance tuning
– use knobs to throttle the inbound and outbound operations.
– see here for more details.
* High availability
– Set singleton property to true to ensure adapter only fires once in a clustered environment.
<service name="GetFile"> <!--Add search and replace rules for the binding properties--> <binding type="jca"> <property name="singleton"> <replace>true</replace> </property> </binding> </service>
– Ideally, use eis/Ftp/HAFtpAdapter
* Multiple directories
– Process files recursively
– Use ignoreListingErrors property to ignore folder permission issues.
* Append mode
– Not supported for SFTP scenarios
* Securing Enterprise Information System Credentials
– Use WebLogic Admin Console to config.
Socket Adapter
* Used by Mediator and BPEL to read and write data over TCP/IP sockets.
* Oracle Socket Adapter is a JCA 1.5 compliant adapter for modeling standard or nonstandard protocols for communication over TCP/IP sockets.
* You can use an Oracle Socket Adapter to create a client or a server socket, and establish a connection.
* The data that is transported can be text or binary.
* Communication modes:
– Inbound synchronous request/response
– Outbound sync request/response
– Inbound receive
– Outbound invoke
JMS Adapter
* Is based on JMS version 1.0.2b
* Is a generic Oracle JMS Adapter (works with any JMS provider).
* Supports JMS topics and queues.
* Supports byte, text, and map message types.
* Supports JMS headers and properties.
* Supports jca.message.encoding property, for example, GBK for simplified Chinese characters.
* Supports the JMS message selector.
* Is DOM2 compliant.
* Supports normalized message.
* Supports specifying a durable JMS subscriber.
* Supports persistent and nonpersistent modes of a JMS publisher.
* Support three JMS types of acknowledgments:
– DUPS_OK_ACKNOWLEDGE
– AUTO_ACKNOWLEDGE
– CLIENT_ACKNOWLEDGE
* Supports tracking message size.
* Supports MapMessage Data Type.
* Supports Enterprise Information System (EIS) Credentials.
* Supports Streaming Large Payload.
* Supports Transactions.
* Supports Error Handling.
* Supports Multiple Consumer Threads.
* Supports Performance Tuning
* Does not support connection retry functionality for MQ provider.
* Does not support outbound retry functionality for AQJMS on Solaris.
Database Adapter
* Enables Oracle SOA Suite and Oracle Fusion Middleware to communicate with database end points.
* Is a JCA 1.5 connector, which runs on the WebLogic.
* Relies on an underlying JDBC connector/driver to enact the database communication.
* Non-programmatic (unlike JDBC).
AQ Adapter
* The Oracle AQ Adapter is both a producer and a consumer of AQ messages.
* The enqueue operation is exposed as a JCA outbound interaction.
* The dequeue operation is exposed as a JCA inbound interaction.
* The Oracle AQ Adapter supports ADT (Oracle object type), XMLType, and RAW queues as payloads. It also supports extracting a payload from one ADT member column.
AQ Adapter Features
* Enqueue-Specific Features (Message Production):
– Correlation Identifier which can be used to retrieve specific messages.
– Multi-consumer Queue.
– Message priority.
– Time specification and scheduling (delay interval and expiration time).
* Dequeue and Enqueue Features:
– Poll option.
– Notification option.
– Mutliconsumer queue.
– Navigation of messages for dequeuing (use correlation id as dequeue order).
– Retries with delays (message is moved to exception queue if retries failed).
– Rule based suscription.
– Oracle AQ Adapter header properties.
– Dequeue condition.
MQ Adapter
* The Oracle MQ Series Adapter enables applications to
– connect to MQ Series queue managers
– place MQ Series messages on queues
– or remove MQ Series messages from queues.
* The Oracle MQ Series Adapter provides all native MQ Series functionalities:
– Supports Positive Action Notification (PAN) and Negative Action Notification (NAN).
– Supports report messages such as confirmation on delivery, confirmation on arrival, exception report, and expiry report.
– Supports sending unwanted or corrupted messages to a dead-letter queue.
– Provides advanced filter options, such as filtering message belonging to a group.
– Faster and easier to use than Oracle JMS Adapter.
BAM Adapter
Describe Applications Adapters Ebiz suite,Peoplesoft, Siebel, etc
Explain adapter run-time configuration
* See here.
Explain adapter design-time configuration
* See here.
Next>> Orchestrating Services with BPEL
References
* Oracle® Fusion Middleware User’s Guide for Technology Adapters 11g Release 1 (11.1.1.4.0)