slide1
Download
Skip this Video
Download Presentation
Accessing Oracle and Non-Oracle Data Sources from J2EE Applications: Introducing JCA

Loading in 2 Seconds...

play fullscreen
1 / 42

Accessing Oracle and Non-Oracle Data Sources from J2EE Applications: Introducing JCA - PowerPoint PPT Presentation


  • 396 Views
  • Uploaded on

Session id: 40045. Accessing Oracle and Non-Oracle Data Sources from J2EE Applications: Introducing JCA. Lars Ewe Product Manager Oracle Corporation. Itamar Ankorion Product Manager Attunity. Agenda. J2EE Connector Architecture (JCA) Oracle Application Server and JCA

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Accessing Oracle and Non-Oracle Data Sources from J2EE Applications: Introducing JCA' - Philip


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
accessing oracle and non oracle data sources from j2ee applications introducing jca
Session id: 40045

Accessing Oracle and Non-Oracle Data Sources from J2EE Applications: Introducing JCA

Lars EweProduct Manager

Oracle Corporation

Itamar AnkorionProduct Manager

Attunity

agenda
Agenda
  • J2EE Connector Architecture (JCA)
  • Oracle Application Server and JCA
  • Customer Case Study – Lloyds
  • The future of JCA
  • Oracle Application Server 10g Integration
  • Q&A
jdbc a history of database integration
JDBC – a history of database integration
  • First – we built our own databases
    • Proprietary concepts, rocket-science
  • Then came along commercial databases
    • Some common concepts, difficult to integrate
  • Then SQL (ODBC, JDBC) came along
    • Standard access to any database
  • Today – database access is a non-issue
    • My kid brother can do it…
jca the future of application integration
JCA – the future of application integration
  • First – Application Integration hurt
    • Dissimilar technology, data, messaging...
  • Then came along XML
    • Standard, exchangeable data structure
    • Still need to know each disparate system
  • Then JCA came along
    • Standard access to any application
  • Starting today – application integration is becoming a non-issue
what is the benefit of jca
What is the benefit of JCA?
  • The connector architecture reduces the integration effort from an (m * n) problem to an (m + n) problem, where ‘m’ is the number of application servers and ‘n’ the number of EISs to be integrated

EIS

EIS

AppServer

AppServer

JCA

m*n

m+n

slide8
J2EE Connector ArchitectureKey Components
  • J2EE Application Server (AS)
    • Container for resource adapter(s)
  • Enterprise Information System (EIS)
  • Resource Adapter (RA)
    • Connects EIS resource to the JCA infrastructure
  • Common Client Interface (CCI)
    • Provides a common programming interface model for interacting with EIS via resource adapters
  • Quality of Service (QoS) Facilities
    • Connection & transaction management and security
j2ee connector architecture
J2EE Connector Architecture

Container-Component

Contract

J2EE Application

Component

OC4J -

J2EE Application

Server

Client API (e.g. CCI)

System Contracts

Resource Adapter

Connection Manager

Transaction Manager

EIS specific contracts

Security Manager

Enterprise

Information System

oracle application server 10 g 9 0 4 containers for j2ee
Oracle Application Server 10g(9.0.4) Containers for J2EE

J2EE 1.3 APIs

OC4J Support

JSP 1.2

Servlet 2.3

EJB 2.0

JDBC 2.0 Extension

JMS 1.0

JNDI 1.2

Connector Architecture 1.0

JTA 1.0

Java Mail 1.2

JAXP 1.1

JAAS 1.0

oracle application server
Oracle Application Server

AJP13

JNDI

Oracle HTTP Server

Web

Container

JMS

HTTP

AJP

mod_oc4j

JDBC

JCA

Web Client

JTA

EJB

Container

ORMI

JAXP

ORMI

JAAS

EJB Client

OC4J Server Process

oracle application server 10 g 9 0 4 jca quality of service qos
Oracle Application Server 10g(9.0.4) JCA – Quality of Service (QoS)

Oracle’s JCA container implementation

provides additional QoS

  • Connection Pooling
  • Container Managed Sign-On (CMSO)
    • Declarative CMSO
    • Programmatic CMSO
connection pooling
Connection Pooling
  • Specify minimum number of connections to create at startup
  • Limit the size of the connection pool by setting the maximum number of connections
  • Choose between fixed, fixed_wait and dynamic schemes for handling overflow of connection requests
  • Pick a timeout for fixed wait scheme
connection pooling example
Connection Pooling Example

Pool with a minimum of one connection and a

maximum of three, when all three connections

are in use, a request for connection should

wait 60 seconds for a connection to free up,

else receive an exception

container managed sign on cmso
Container Managed Sign-On (CMSO)
  • Configure container to take care of sign-on to EIS transparently
  • Choose between different schemes
    • Declarative
    • Programmatic
declarative cmso example
Declarative CMSO Example

...

guest

guestpw

scott

scott

tiger

...

programmatic cmso
Programmatic CMSO
  • Provide custom authentication module
  • Plug-in JAAS modules or implement OC4J-specific interfaces
  • JAAS modules are portable as compared to the OC4J-specific alternative
  • Authentication modules that implement OC4J-specific interfaces are simpler to write and deploy compared to JAAS modules
customer case study

Customer Case Study

Oracle Application Server integration with back-end Mainframe CICS

the players
The Players
  • The Lloyds Insurance Market (Lloyds)
  • International Underwriters Association (IUA)
  • Xchanging Ins-Sure Services (XIS)
  • Steria  System Integration
  • Oracle  OC4J
  • Attunity  CICS JCA Adapter
claim convergence project
Claim Convergence Project

Business Goals:

  • Reduce TCO (operating and maintenance costs) by converging two CICS based Claim systems
  • Increase end-user productivity with web interfaces
  • Establish agile IT foundation to quickly introduce new capabilities in the future
solution architecture
JCASolution Architecture

Web

Browsers

Oracle Application Server

(Solaris)

FixNAT

Firewall

JSP

?

OS390

CICS

the technical objectives i e challenges
The Technical Objectives(i.e., Challenges)
  • Standard integration of J2EE and CICS (JCA, XML)
    • Develop productivity (known skill sets and tools)
    • Isolate legacy from the Java developers
  • Turn legacy into reusable services (SOA)
    • Agile, reusable architecture foundation
    • Save on maintenance
  • Robust, Simple mainframe connectivity
    • Native data type mapping (into XML)
    • No changes to CICS applications
    • No coding per transactions
cics login program commarea
CICS LogIn Program COMMAREA

COMMAREA is Input/Output buffer for the CICS program

01 C002-COMMAREA.

03 C002-TRANS-ID PIC X(4)

03 C002-SESSION-NO PIC S9(9) COMP.

03 C002-PROG-STATUS PIC S9(4) COMP.

03 C002-ERROR-COUNT PIC S9(4) COMP.

03 C002-ERROR-TABLE OCCURS 10.

06 C002-ERROR-CODE PIC X(4).

06 C002-ERROR-TEXT PIC X(70).

03 C002-WARNING-COUNT PIC S9(4) COMP.

03 C002-WARNING-TABLE OCCURS 10.

06 C002-WARNING-CODE PIC X(4).

06 C002-WARNING-TEXT PIC X(70).

03 C002-ACCOUNT-CODE PIC X(4)

03 C002-NET-USER-ID PIC X(8)

03 C002-PASSWORD PIC X(8)

03 C002-SECTION-CODE PIC X(4).

03 C002-LOGIN-STATUS PIC X.

The mapped Output parameter (‘LogInOut’)

The mapped Input parameters (‘LogInIn’)

cics jca adapter metadata
CICS JCA Adapter Metadata

Adapter Type = CICS

Adapter Interactions

In/Out Message Definition (Schema)

Native Data Type/Structure Mapping

jca deployment descriptor
JCA Deployment Descriptor

Define Connector Factory

Specify a JNDI location for the JCA Adapter

Adapter Connection Attributes

Connection Pooling

using the jca adapter
Using the JCA Adapter

Lookup CICS JCA Adapter

Context ic = new InitialContext();

String name = "java:comp/env/eis/attunityCICS";

javax.resource.cci.ConnectionFactory cf = (ConnectionFactory) ic.lookup (name);

try {

javax.resource.cci.Connection con = cf.getConnection();

Interaction interaction = con.createInteraction();

AttuInteractionSpec iSpeq = new AttuInteractionSpec("logIn");

RecordFactory rf = cf.getRecordFactory();

MappedRecord queryRecord = rf.createMappedRecord("logInIn");

queryRecord.put("@C002_NET_USER_ID",event.getUsername());

queryRecord.put("@C002_PASSWORD",event.getPassword());

Record oRec = interaction.execute(iSpeq, queryRecord);

Element outEl = ((DomRecord)oRec).getDom();

String session = (String)((MappedRecord)oRec).get("@C002_SESSION_NO");

System.out.println("SESSION IS " + session);

interaction.close();

con.close();

}

Get Connection and Create Interaction (‘LogIn’)

Build interaction input document (‘LogInIn’)

Execute the interaction

Parse interaction response

Close

other integration considerations
Other Integration Considerations
  • Coordinate transaction calls (transID)
  • Firewall
    • Support FIXNAT
    • Transparent to the App Server
  • Connection Pooling
    • Oracle side (OC4J)
    • Mainframe CICS side (Attunity Connect)
  • Performance
    • Pre-loaded adapter definitions and listeners
what have we seen
What Have We Seen?
  • Standard Integration APIs
    • JCA CCI: getConnection, createInteraction, execute...
    • XML: manipulate in/out docs
  • Flexible Adapter Definition
    • Map Interactions to legacy Programs
  • Robust Native-data structure (e.g. COBOL) Mapping
    • Simple values, Arrays, Inner Structures, etc.
    • Powerful manipulation of interaction messages
  • Other Capabilities
    • Transactions (expose as XAResource), Batch interactions
bottom line
Bottom Line
  • It’s Standard (JCA CCI, XML)
  • It’s Easy (use Java APIs and Objects)
  • It’s Fast (proved architecture in a day)
  • It Works !
the results
The Results
  • “It’s pretty simple to introduce new transactions, so the team can expand the claims system in almost any direction”
  • “By making data entry more intuitive and user friendly, we can improve throughput... This will also increase our capacity for taking on potential new business…”

Stuart Allan, XIS Convergence Program

jca 1 5 jsr 112
JCA 1.5 (JSR 112)
  • Release with J2EE 1.4
  • Enable inbound communication
    • Transaction inflow
    • Message inflow
  • Provide JMS Provider pluggability
  • Enhanced/new QoS Contracts
    • Lifecycle management
    • Work management
  • Packaging model
slide35
JCA 2.0?
  • Release after J2EE 1.4
  • Provide CCI meta-data support
  • Add XML support to CCI
  • Other QoS enhancements
integrate your business
Business Process Management

B2BIntegration

WebServiceIntegration

EnterpriseApplicationIntegration

Integrate Your Business

Single Integration Tool

Exchanges

E-Business

Suite

3rd Party Apps

Any Data Source

Custom Apps

Messaging

Systems

  • Improve efficiency using integrated business processes
  • Open, standards-based architecture
  • Single solution for A2A, B2B, and web services integration
  • Best solution pre-integrated with Oracle E-Business Suite
oracle application server 10 g integration38
Tools

Design

Monitor

Analyze

Metadata

Design Metadata

Run-Time Repository

Run-Time / Common Services

Adapters

HTTP/S

Trading Partner Management

Oracle11i

SMTP

SAP R3

Business Process Management

FTP

Peoplesoft

SOAP

MQSeries

Security

Validation

Transformation

ebXML

JMS

JDBC

RosettaNet

Logging

Monitoring

TransactionManagement

JCA

EDI

Oracle Application Server 10g Integration

B2B Services

  • Improve efficiency using integrated business processes
  • Common view approach minimizes impact of adding applications
  • Pre-certified JCA based adapters
  • Business process intelligence
oracle application server integration
Oracle Application Server Integration

Fast Deployment via Packaged Adapters

  • Applications
  • Oracle 11.5.X
  • Oracle 10.7
  • SAP R/3
  • SAP R/4
  • Peoplesoft
  • Ariba
  • Commerce One
  • JD Edwards
  • Siebel
  • Siebel 2000
  • i2
  • Any J2CA Application
  • Databases
  • Oracle7.3, 8.0, 8i, 9i
  • MS SQL-Server
  • IBM DB/2 UDB
  • Sybase
  • Informix
  • J2CA Datasources
  • Messaging
  • Oracle AQ
  • MQ-Series
  • TIBCO
  • Legacy
  • CICS
  • New EDI
  • Transports
  • SOAP
  • HTTP, HTTP-S
  • SMTP
  • FTP
  • CORBA/IIOP
  • COM/COM+
  • Generic DB
  • Flat File
slide41
Q

&

Q U E S T I O N S

A N S W E R S

A

ad