30
Service-orientierte Architekturen mit Forms und Reports Jürgen Menge TSBU Middleware ORACLE Deutschland GmbH

Service-orientierte Architekturen mit Forms und Reports · • Native Java Embedding • XML Facade • XQuery Transformation • Detailiertes Fehler Reporting • Ant-basierendes

Embed Size (px)

Citation preview

Service-orientierte Architekturen mit Forms und Reports

Jürgen MengeTSBU Middleware

ORACLE Deutschland GmbH

• Worum geht es bei SOA ?

• Oracle Forms und SOA

• Oracle Reports und SOA

• Weiterführende Informationen

Service-orientierte Architekturen mit Forms und Reports

� SOA beschreibt eine Software-Infrastruktur, in der heterogene Anwendungen als Services implementiert und über standardisierte Schnittstellen erreichbar sind.

� Services können beliebig verteilt sein und lassen sich dynamisch und flexibel zu Geschäftsprozessen verbinden.

� Vorteile für Unternehmen:– Flexible Anpassung der Anwendungslandschaft

an sich ändernde Anforderungen– Reduzierung der Wartungskosten

Service-orientierte Architektur (SOA)

Web Services und Geschäftsprozesse

Web Service 1

Web Service 2

Web Service 3

Web Service 4

Web Service 5

Web Service n

Prozess

Pragmatische Umsetzung …

� Enwicklung neuer Anwendungen für Geschäftsprozesse (Transaktionen, Security, ...)

� Weiterverwendung bestehender Applikationen(Kapselung als Service)

� Verbindung von .NET, J2EE und Bestandsanwendungen

Sensor Data Hub

Standard Interface

Custom OrderApplication

Standard Interface

SAP R/3

Standard Interface

OracleFinancials

Standard InterfaceMainframe HR

Application

Standard Interface.NET Inventory

Application

Standard Interface

Neue Supply Chain Management Anwendung(Business Process oder Composite Application)

BPEL - Orchestrierung von Geschäftsprozessen

� Business Process Execution Language– Standard für die Orchestrierung von

Geschäftsprozessen und Web Services (OASIS, Version 1.1)

– XML basiert

– Entwickelt von IBM, Microsoft and BEA (Version 1.0 im August 2002) auf Basis von XLANG (Microsoft) und WSFL (IBM)

– Eingereicht zur Standardisierung bei OASIS imApril 2003

– Unterstützt durch alle “Key-Player” (IBM, Microsoft, Oracle, Sun, BEA, SAP, Siebel, …)

BPEL, XQuery, XSLT, WS-ADDRESSING

MODELLIERUNG CONNECTIVITY EXECUTION RUN-TIME MANAGEMENTMANAGEMENT

• Umfassende BPEL 1.1

Unterstützung

• Visuelles

Modellierungswerkzeug

• Native Java Embedding

• XML Facade

• XQuery Transformation

• Detailiertes Fehler

Reporting

• Ant-basierendes build

und Deployment

framework

• Versionierung

• Bindings zu 100+ Backend

Systemen (JCA)

• JMS Bridge

• .NET, Axis, Workshop,

Glue, Systinet, interop

• Benutzeraufgaben/

Workflow

• Email mit Anhängen

• Umfassende BPEL 1.1

Unterstützung

• Sync. Messaging

• Async. Messaging

• Context Dehydration

• Ausfallsicherheit

•Versionierung

• Kompensierende

Transaktionen

• Clustering

• Grosse XML Dokumente

• Visuelles Monitoring

• Auditing

• BPEL Debugging

• In-flight Administration

• Performance Tuninng

• Task Management

• Partitioning/Domains

BPEL DESIGNER BPEL CONSOLEWSDL

BINDINGSBPEL ENGINE

Oracle BPEL Process Manager

Oracle BPEL – Beispiel Kreditvergabe

Select Lowest Offer

10:00am

Handle Negative Credit Exception

Credit Rating

start

end

BPEL Flow

?

United Loan Star Loan

Get Rating

Send Loan Application

Receive Loan Offer

03:00pm

Send Loan Application

Receive Loan Offer

<process>

</process>

<switch>

<variable>

<partnerLink>

<partnerLink> <partnerLink>

<faultHandlers>

<receive>

<invoke>

<invoke>

<flow>

</flow>

• Worum geht es bei SOA ?

• Oracle Forms und SOA

• Oracle Reports und SOA

• Weiterführende Informationen

Service-orientierte Architekturen mit Forms und Reports

� Forms-Module als Konsument von Web Services– über die Integration von server-seitigem Java

� Interaktion von Forms mit BPEL-Prozess– Forms-Modul kommuniziert mit dem

BPEL-Prozess über Methodenaufruf

– notwendig für Interaktion des Benutzers mit dem Prozess

– über die Integration von server-seitigem Java

� Forms-Module als Web Service publizieren– für Dialog-Anwendungen wenig sinnvoll

Oracle Forms und SOA

� Forms-Module als Konsument von Web Services– über die Integration von server-seitigem Java

– Einbindung des Web Service Client Stub in Forms mittels des Java Importers

– Aufruf einer JVM auf dem Application Server

� Beispiel: Java Importer – Calling a Web Service (OTN)

http://www.oracle.com/technology/sample_code/products/forms/index9i.html

Forms als Konsument von Web Services

Oracle Forms - Java Importer

� Unterstützung für– Arrays

– Exceptions

– Objects

– Methods

– Attributes

– StaticMethods/Attributes

– Object lifetime & Persistence

� Generierung von PL/SQL-Wrapper-Packages zur Ausführung auf dem Middle Tier

� Schritte– Web Service auswählen

=> JDeveloper: Suche in Registries

– Client Stub für den Web Service erzeugen=> JDeveloper: Web Service Wizard

– Client Stub kompilieren und testen=> JDeveloper

– Client Stub (*.class) importieren=> Forms: Java Importer

– Methoden aus Forms aufrufen=> Forms: Trigger bzw. Program Units

Forms als Konsument von Web Services

D E M O N S T R A T I O ND E M O N S T R A T I O N

Integration eines Web Service in Oracle Forms

� Interaktion von Forms mit BPEL-Prozess– notwendig für Interaktion des Benutzers mit dem Prozess

– Forms-Modul dient als Dialog-Schnittstelle zum Prozess

– Forms-Modul kommuniziert mit dem BPEL Process Manager über Methodenaufruf

– Einbindung von Java Classes in Forms mittels des Java Importers

– Aufruf einer JVM auf dem Application Server

– Aufruf des BPEL Process Managers über Java API oder Web Service API

� Oracle Forms in the SOA World (Oracle Magazin)http://www.oracle.com/technology/oramag/oracle/05-mar/o25forms.html

Interaktion von Forms mit BPEL-Prozess

Beispiel: BPEL-Prozess

� Angebote einholen– automatische Angebotserstellung

(United Loan)

– Angebotserstellung im Dialog(Star Loan)

Beispiel: Forms-Modul zur Angebotserstellung

Beispiel: Architektur Forms - BPEL

Interaktion von Forms mit BPEL-Prozess

� Schritte– Schreiben der Java-Klassen zur Interaktion mit dem

BPEL Process Manager (Java API oder Web Service API)

=> JDeveloper

– Java-Klassen kompilieren und testen=> JDeveloper

– Java-Klassen (*.class) importieren=> Forms: Java Importer

– Methoden aus Forms aufrufen=> Forms: Trigger bzw. Program Units

– Datenmanipulation programmieren=> Forms: Data Block

• Worum geht es bei SOA ?

• Oracle Forms und SOA

• Oracle Reports und SOA

• Weiterführende Informationen

Service-orientierte Architekturen mit Forms und Reports

Oracle Reports und Web Services

Flexible Möglichkeiten der Integration von Reports in SOA

� Web Service führt Geschäftslogik aus– Einbindung durch Java Importer

– Aufruf des Web Service über PL/SQL-Routinen

– sinnvoll z.B. bei Formatierungen und Berechnungen

� Beispiel: Using a Web Service with Oracle 9i Reports

http://www.oracle.com/technology/tech/webservices/htdocs/series/reports/index.html

Reports nutzt Gesch äftslogik eines Web Service

Oracle Reports - Java Importer

� Unterstützung für– Arrays

– Exceptions

– Objects

– Methods

– Attributes

– StaticMethods/Attributes

– Object lifetime & Persistence

� Generierung von PL/SQL-Wrapper-Packages zur Ausführung auf dem Middle Tier

� Web Service liefert die Daten für den Report– Verwendung einer Pluggable Datasource aus dem OTN

(Plugin Exchange)

– Zertifizierung für Reports 9i (9.0.2)

� OTN (Plugin Exchange)

http://www.oracle.com/technology/products/reports/pluginxchange/index.html

Web Service als Datenquelle f ür Reports

� Kommunikation mit dem Reports Server via Web Service (SOAP)

� Starten, Stoppen und Überwachen von Jobs

� Integration von Oracle Reports in unterschiedlichste Applikationen (J2EE, .NET)

Web Service Interface zum Reports Server

Oracle Reports - Servlet RWWebService

� Web Service Endpoint http://host:port/reports/rwwebservice

– Download des Client Proxy möglich

� Methoden– getAPIVersion()

– getServerInfo()

– getJobInfo()

– killJob()

– runJob()

D E M O N S T R A T I O ND E M O N S T R A T I O N

Web Service Interface zum Reports Server

• Worum geht es bei SOA ?

• Oracle Forms und SOA

• Oracle Reports und SOA

• Weiterführende Informationen

Service-orientierte Architekturen mit Forms und Reports

Weiterführende Informationen

� Oracle Formshttp://www.oracle.com/technology/products/forms/index.html

� Oracle Forms in the SOA World (Oracle Magazin)Robin Zimmermannhttp://www.oracle.com/technology/oramag/oracle/05-mar/o25forms.html

� Oracle Reportshttp://www.oracle.com/technology/products/reports/index.html

Vielen Dank fVielen Dank f üür dier dieAufmerksamkeit!Aufmerksamkeit!

Noch Fragen?Noch Fragen?

Q&A

Service-orientierte Architekturen mit Forms und Reports