DOAG 2015, Nürnberg
Ulrich Gerkmann-Bartels
und
Andreas Koop
REST IN PEACE MIT ORACLE
ORDS, NODE.JS, ADF, JAVA ODER OSB
DOAG 2015, Nürnberg
ÜBER UNS
2
Ulrich Gerkmann-Bartels
Gründer, CEO und Enterprise Architekt

@GerkmannBartels
Andreas Koop
Gründer, CFO und Senior Architekt

@andreaskoop
ENTERPRISE PRAGMATIC IT
DOAG 2015, Nürnberg
AGENDA
Einleitung
Architektur
Showcase: ORDS, NODE.JS , ADF, Plain Java, OSB
Bewertungsmatrix
Fazit und Ausblick
4
DOAG 2015, Nürnberg
WIESO, WESHALB, WARUM - REST
‣ Ursprung: Dissertation von Roy Fielding (2000)
‣ REST steht für REpresentational State Transfer
‣ Ist ein Architekturstil für Hypermedia-Systeme
‣ Ressourcen werden in einem System über eine lose
gekoppelte Adressierung angesprochen.
‣ Keine Technologie, kein Protokoll, kein zweites SOAP
5
DOAG 2015, Nürnberg
REST-PRINZIPIEN UND RESSOURCEN
‣ Über eine eindeutige Adresse (URI) wird eine Ressource
angesprochen (http://localhost:8080/ords/hr/employees/104)
‣ Es kann verschiedene Repräsentationen einer Ressource
geben (XML, JSON, HTML, ?)
‣ Es stehen nur wenige Methoden zur Anwendung auf
Ressourcen zur Verfügung (GET,PUT,POST,DELETE)
‣ Ressourcen sind Datenzentriert (CRUD)
‣ Zustandslose Kommunikation (Stateless)
6
DOAG 2015, Nürnberg
HATEOS
HYPERMEDIA AS THE ENGINE OF APPLICATION STATE
‣ Jede Antwort beinhaltet Links zu weiteren Aktionen
‣ Diese Links repräsentieren den aktuellen Zustand der
Ressource / Applikation mit Ihrem Inhalt und Aktionen
‣ Ein Klient kennt im Prinzip nur eine URL zu einer
Ressource / Applikation. Weitere Inhalte und Aktionen
werden zur Laufzeit mit jedem entsprechenden Response
mitgeliefert.
‣ RESTful API „is driven by hypertext“
7
HATEOS
DEMO
DOAG 2015, Nürnberg
AGENDA
Einleitung
Architektur
Showcase: ORDS, NODE.JS , ADF, Plain Java, OSB
Bewertungsmatrix
Fazit und Ausblick
9
JavaScript - Client
DEMO
API Design - Swagger
DEMO
DOAG 2015, Nürnberg
ARCHITEKTUR
12
Data Store
Layer
Business
Rules /
Logic /
Process
Layer
Service
Layer
Client Layer
Data
Access
Layer
React
HTMLJSCSS
Client
Node.js + Oracle
Driver
ORDS + WLS /
Tomcat / Jetty
WLS + JEE7+
ADF
WLS + JEE7
WLS + JEE7 +
OSB + SOAP
WebService
Oracle Database
Oracle Jet
HTMLJSCSS
Client
DOAG 2015, Nürnberg
AGENDA
Einleitung
Architektur
Showcase: ORDS, NODE.JS , ADF, Plain Java, OSB
Bewertungsmatrix
Fazit und Ausblick
13
REST mit ORDS
DEMO
DOAG 2015, Nürnberg
ORDS ARCHITEKTUR
15
Data Store Layer
Business Rules
/ Logic /
Process Layer
Service
Layer
Abbildung und Routing von SQL und
Transformation des Ergebnisses
Client Layer
SQL/PL-SQL - Land
Data
Access
Layer
ORDS + WLS /
Tomcat / Jetty
Oracle
Database /
NoSQL
DOAG 2015, Nürnberg
BEWERTUNG ORDS
16
‣ Stärken: Sehr einfach für CRUD und Abfragen von Daten
‣ Schwächen: Modifikation des Request/Response - Zyklus
‣ Empfehlung
‣ RESTenable klassische Oracle Infrastruktur ohne weiteren
Technology-Stack, Mobile Cloud Service
‣ Skills: Oracle SQL & PL/SQL, JSON, XML
‣ Tools: SQL Developer
REST mit NODE.JS
DEMO
DOAG 2015, Nürnberg
NODE.JS & ORACLE DB DRIVER
ARCHITEKTUR
18
Data Store Layer
Business Rules
/ Logic /
Process Layer

?
Service Layer
JavaScript - Land
Client Layer
Data
Access
Layer
Node.js + Oracle
Driver
Oracle Database
DOAG 2015, Nürnberg
BEWERTUNG NODE.JS & ORACLE DB
DRIVERS
19
‣ Stärken: JavaScript Land - Client und Server - Sehr hoher
Freiheitsgrad
‣ Schwächen: Kein Out-Of-The-Box, Data Access Framework im
Aufbau, Auswahl von zusätzlichen Modulen notwendig (Express,
Swagger, u.a.)
‣ Empfehlung
‣ Strategische Entscheidung* -> JavaScript - Ökosystem
‣ Skills: JavaScript!, JSON/XML
‣ Tools: NODE.JS, ATOM, SWAGGER, MCS, <X>ify,…
* Je nach Umfeld und Aufgabenstellung unausweichlich
DOAG 2015, Nürnberg
EMPFEHLUNG
NODE.JS & ORACLE DB DRIVERS
20
Orawrap is a wrapper module for the Oracle Database driver
for Node.js (node-oracledb).
https://github.com/OraOpenSource/orawrap
‣ Pool Manager für die Verwaltung von Pool Storage,
Zugriffsmethoden und Queuing von Connetion-
Anfragen
‣ Connection Manager für die einfache Zugriff auf eine
Database Connection (Automatisches öffnen und
schliessen der Ressourcen)
‣ Unterstützung von Ausführung zentralisierten SQL
Scripten mit unterschiedlichen Timings.
DOAG 2015, Nürnberg
REST MIT ADF 12.2.1+
‣ ViewObjekt-Instanzen eines Application Modules
können als REST-Resourcen exponiert werden
‣ Deklarativ / Wizard
‣ Generierung eines

RESTWebService-

Projektes
‣ Mehrversionsfähig-

keit out-of-the-box
21
DOAG 2015, Nürnberg 22
REST mit ADF
DEMO
DOAG 2015, Nürnberg
ORACLE ADF (12.2.1+)
ARCHITEKTUR
23
Data Store Layer
Business Rules
/ Logic /
Process Layer
Service Layer
Oracle Database
Java-4GL-Framework-Land
WLS ud Oracle ADF
Client Layer
Data
Access
Layer
REST-
Service
(generiert)
ADF / MAF
REST DataControl
ADF BC

ApplicationModu
le
HTTP(S)/
REST
ADF BC

VO

EO
Oracle Database
DOAG 2015, Nürnberg
BEWERTUNG ORACLE ADF
‣ Stärken: Out-of-The Box, inkl. Metadaten, XML/JSON,
Paginierung bei Collections, RESTDataControl
‣ Schwächen: Anpassbarkeit, Freiheitsgrad
‣ Empfehlung
‣ Bei Vorhandensein von ADF Business Components
‣ Skills: Java, ADF, JSON/XML, SQL, ggf. PL/SQL
‣ Tools: JDeveloper
24
DEMO
REST mit Plain Java
DOAG 2015, Nürnberg
PLAIN JAVA
ARCHITEKTUR
26
Data Store Layer
Business Rules
/ Logic /
Process Layer
Service Layer
Oracle Database
Java - Land
Application Server
Client Layer
Data
Access
Layer
REST
Resource
@EJB Service
EJB JPA
Oracle Database
DOAG 2015, Nürnberg
BEWERTUNG PLAIN JAVA
‣ Stärken: Java-Standard, JAX-RS
‣ Schwächen: -
‣ Empfehlung
‣ Bei Vorhandensein von EJB, JPA, Java EE Knowhow
‣ Skills: Java, JAX-RS, JSON/XML, EJB, JPA, SQL
‣ Tools: Java IDE (Netbeans, Eclipse, JDev, IDEA etc)
27
DOAG 2015, Nürnberg
REST MIT OSB
‣ Integrierte Unterstützung im Proxy-Service!
(Expose as REST Wizard. Anpassung Resourcen /
Methoden / Parameter möglich)
‣ Nutzung vom Mediator für Transformation /
Mapping von SOAP -> REST Service
‣ EJBs könnenen ebenso als REST-Service exponiert
werden.
‣ Monitoring, Reporting, Security für die REST-
Services inklusive!
28
DEMO
REST mit OSB
DOAG 2015, Nürnberg
ORACLE OSB
ARCHITEKTUR
30
Data Store Layer
Business Rules
/ Logic /
Process Layer
Service Layer
Oracle Database
Enterprise-SOA/EAI-WebService-Land
WLS und Oracle OSB
Client Layer
Data
Access
Layer
REST-Proxy
Service
Mediator
SOAP, EJB,
etc
DOAG 2015, Nürnberg
BEWERTUNG OSB
‣ Stärken: Wiederverwendung und Integration in eine SOA-Architektur, Integriertes
Monitoring
‣ Schwächen: Komplexe Infrastruktur: WLS, SOA, OSB
‣ Achtung: SOAP Services mit einer API- Fassade zu versehen könnte nicht überall bei
der Verwendung auf Gegenliebe stoßen
‣ Empfehlung
‣ SOA/ESB ist strategische Plattform für Enterprise Application Integration
‣ Bei Vorhandensein von SOA Suite, OSB, Knowhow
‣ Skills: OSB, JDeveloper, XSL, XPATH, SOAP, JSON/XML …
‣ Tools: JDeveloper
31
SOAP ist RPC Style, REST API ist Ressource -Style
DOAG 2015, Nürnberg
AGENDA
Einleitung
Architektur
Showcase: ORDS, NODE.JS , ADF, Plain Java, OSB
Bewertungsmatrix
Fazit und Ausblick
32
REST in Peace  - Mit ORDS, Node.JS, ADF, Java oder OSB?
DOAG 2015, Nürnberg
BEWERTUNGSMATRIX
34
weniger mehr
Infrastruktur und Produkt orientiert
ORDS NODE.JS Plain Java ADF OSB
Ansatz
SQL-PL/SQL -
Land
JavaScript-Land Java-Land
Java-4GL-
Framework-Land
SOA/EAI-Land
Beherrschbar-
keit
Gut Gut Gut Befriedigend Herausfordernd
Gewichtsklasse S M M L XXL
Werkzeug/Tool-
Kopplung
Hoch Niedrig Niedrig Hoch Hoch
Perspektive /
Evolution
Stark (Sehr) stark Mittel Partiell Partiell
Maxime
Das, was es
kann reicht uns,
später sehen wir
weiter !
Was immer wir
wollen, müssen/
können wir mit
JavaScript machen
Was immer wir
wollen, müssen/
können wir mit
Java machen
Wir wollen nicht
basteln, wir nutzen
Produktfunktionen,
um eine Lösungen
zu bauen.
Was immer da kommt, wir
können es in unsere
umfassende
Integrationsstrategie im
Unternehmen als
Baustein einfügen !
DOAG 2015, Nürnberg
AGENDA
Einleitung
Architektur
Showcase: ORDS, NODE.JS , ADF, Plain Java, OSB
Bewertungsmatrix
Fazit und Ausblick
35
DOAG 2015, Nürnberg
FAZIT & AUSBLICK
‣ „Cloud und Mobile sprechen REST“
‣ REST-APIs verbessern die technische Architektur von
Softwaresystemen
‣ REST-APIs benötigen ggfs. andere Infrastrukturbausteine wie
Identity und Access Management oder ein API Management
Werkzeug.
‣ Kombinierte Architekturen sind ggfs. zielführender (NODE.JS und
ORDS, NODE.JS und Java, OSB und ADF)
‣ Allumfassendes strategisches Einheitskonzept war 1995
36
DOAG 2015, Nürnberg
WEITERE INFORMATIONEN
‣ Blog: JavaScript and Oracle

https://jsao.io/
‣ node.js und Oracle DB Driver 

https://www.npmjs.com/package/oracledb
‣ node.js und Oracle DB Driver must read !

https://jsao.io/2015/09/connection-request-queuing-with-the-node-js-driver/
‣ REST API Design - Resource Modeling

https://www.thoughtworks.com/insights/blog/

rest-api-design-resource-modeling
37
DOAG 2015, Nürnberg
BASIS LITERATUR
38
VIELEN DANK FÜR IHRE
AUFMERKSAMKEIT
HABEN SIE NOCH FRAGEN?
Andreas Koop 40
NICHT VERPASSEN
Ulrich
Gerkmann Bartels
Agilität und Microservices als
Chance für Modernisierung?
—
Di, 17.11.2015
16:00 - 16:45
Stockholm
—
DOAG 2015, Nürnberg 41
Treffen Sie uns am Stand der scope alliance auf Ebene 1
Andreas

Koop
Ulrich
Gerkmann-Bartels
REST in Peace  - Mit ORDS, Node.JS, ADF, Java oder OSB?

Weitere ähnliche Inhalte

PDF
Cloud-native Apps – Architektur, Implementierung, Demo
PDF
Die 5 mythen-der-forms-modernisierung
PDF
Effective Blueprints for Forms 2 Oracle ADF
PDF
Gestern OWB, heute ODI
PDF
Parkraumbewirtschaftung mit Oracle ADF Mobile?
KEY
CI und OTPC in ADF Projekten
PDF
Continuous Delivery in ADF Projekten
PDF
Oracle WebLogic for DevOps
Cloud-native Apps – Architektur, Implementierung, Demo
Die 5 mythen-der-forms-modernisierung
Effective Blueprints for Forms 2 Oracle ADF
Gestern OWB, heute ODI
Parkraumbewirtschaftung mit Oracle ADF Mobile?
CI und OTPC in ADF Projekten
Continuous Delivery in ADF Projekten
Oracle WebLogic for DevOps

Was ist angesagt? (7)

PDF
Choice-o-mat: Entscheidungshilfe für Oracle Entwicklungswerkzeuge
PDF
Best Practices für Multi-Channel Application Development
PDF
Continuous Delivery in Oracle ADF Projekten
PPTX
Der Mythos der Trunk-basierten Entwicklung
PDF
Visualisierung von fachlichen Informationen mit Oracle ADF
PPTX
MT AG Data Vault Generator
PPTX
Oracle DB 12c SQL Tuning
Choice-o-mat: Entscheidungshilfe für Oracle Entwicklungswerkzeuge
Best Practices für Multi-Channel Application Development
Continuous Delivery in Oracle ADF Projekten
Der Mythos der Trunk-basierten Entwicklung
Visualisierung von fachlichen Informationen mit Oracle ADF
MT AG Data Vault Generator
Oracle DB 12c SQL Tuning
Anzeige

Andere mochten auch (20)

PPTX
Modernisierung in Zeiten wie diesen
PDF
Choice-o-mat - Entscheidungshilfe für Oracles Entwicklungswerkzeuge
PDF
Die 5 Mythen der Forms-Modernisierung
PDF
Agilität und Microservices als Chance für Modernisierung?
PDF
WebLogic im Docker Container
PDF
Moving to the APEX Listener
PDF
Client side webdevelopment with jet
PPTX
ApEx effektiv - DOAG 2010 - OPITZ CONSULTING - Stephan Engel
PDF
Was ist Docker?
PPTX
Forms Microsoft and more
PDF
APEX Wearables
PDF
How to make APEX print through Node.js
PDF
API Management - Why it matters!
PDF
Was ist Docker ?
PDF
Leyendas canarias13
PDF
Revista Mundo Contact Febrero 2012
PPTX
EKOSISTEM 2
PDF
Mette Portfolio
PDF
Acceptance of Mobile Banking in Nigeria: A Modified TAM Approach
PDF
Michael Stoner - swissnexSF presentation
Modernisierung in Zeiten wie diesen
Choice-o-mat - Entscheidungshilfe für Oracles Entwicklungswerkzeuge
Die 5 Mythen der Forms-Modernisierung
Agilität und Microservices als Chance für Modernisierung?
WebLogic im Docker Container
Moving to the APEX Listener
Client side webdevelopment with jet
ApEx effektiv - DOAG 2010 - OPITZ CONSULTING - Stephan Engel
Was ist Docker?
Forms Microsoft and more
APEX Wearables
How to make APEX print through Node.js
API Management - Why it matters!
Was ist Docker ?
Leyendas canarias13
Revista Mundo Contact Febrero 2012
EKOSISTEM 2
Mette Portfolio
Acceptance of Mobile Banking in Nigeria: A Modified TAM Approach
Michael Stoner - swissnexSF presentation
Anzeige

Mehr von enpit GmbH & Co. KG (15)

PPTX
Von Big Data zu Künstlicher Intelligenz - Maschinelles Lernen auf dem Vormarsch
PPTX
Mit Legosteinen Maschinelles Lernen lernen
PDF
Development in der Cloud-Ära
PDF
Best Practices für Last- und Performancetests von Enterprise Applikationen au...
PDF
Visualisierung von fachlichen Informationen mit Oracle ADF
PDF
WebCenter Portal - Integrate Custom taskflows
PDF
Java WebApps und Services on Oracle Java Cloud Service
PDF
Rapid Application Development (RAD) im Enterprise - Quo vadis Portal?
PDF
Oracle Cloud verleiht ADF-Anwendungen Flügel
PDF
ADF Software Factory - Software aus der Werkstatt
PDF
Deployment Best Practices on WebLogic Server (DOAG IMC Summit 2013)
KEY
WepApps mit Play! - Nichts leichter als das
KEY
ADF User Interface Design Best Practices
KEY
Administration von ADF Anwendungen
ZIP
WebLogic Administration und Deployment mit WLST
Von Big Data zu Künstlicher Intelligenz - Maschinelles Lernen auf dem Vormarsch
Mit Legosteinen Maschinelles Lernen lernen
Development in der Cloud-Ära
Best Practices für Last- und Performancetests von Enterprise Applikationen au...
Visualisierung von fachlichen Informationen mit Oracle ADF
WebCenter Portal - Integrate Custom taskflows
Java WebApps und Services on Oracle Java Cloud Service
Rapid Application Development (RAD) im Enterprise - Quo vadis Portal?
Oracle Cloud verleiht ADF-Anwendungen Flügel
ADF Software Factory - Software aus der Werkstatt
Deployment Best Practices on WebLogic Server (DOAG IMC Summit 2013)
WepApps mit Play! - Nichts leichter als das
ADF User Interface Design Best Practices
Administration von ADF Anwendungen
WebLogic Administration und Deployment mit WLST

REST in Peace - Mit ORDS, Node.JS, ADF, Java oder OSB?

  • 1. DOAG 2015, Nürnberg Ulrich Gerkmann-Bartels und Andreas Koop REST IN PEACE MIT ORACLE ORDS, NODE.JS, ADF, JAVA ODER OSB
  • 2. DOAG 2015, Nürnberg ÜBER UNS 2 Ulrich Gerkmann-Bartels Gründer, CEO und Enterprise Architekt @GerkmannBartels Andreas Koop Gründer, CFO und Senior Architekt @andreaskoop
  • 4. DOAG 2015, Nürnberg AGENDA Einleitung Architektur Showcase: ORDS, NODE.JS , ADF, Plain Java, OSB Bewertungsmatrix Fazit und Ausblick 4
  • 5. DOAG 2015, Nürnberg WIESO, WESHALB, WARUM - REST ‣ Ursprung: Dissertation von Roy Fielding (2000) ‣ REST steht für REpresentational State Transfer ‣ Ist ein Architekturstil für Hypermedia-Systeme ‣ Ressourcen werden in einem System über eine lose gekoppelte Adressierung angesprochen. ‣ Keine Technologie, kein Protokoll, kein zweites SOAP 5
  • 6. DOAG 2015, Nürnberg REST-PRINZIPIEN UND RESSOURCEN ‣ Über eine eindeutige Adresse (URI) wird eine Ressource angesprochen (http://localhost:8080/ords/hr/employees/104) ‣ Es kann verschiedene Repräsentationen einer Ressource geben (XML, JSON, HTML, ?) ‣ Es stehen nur wenige Methoden zur Anwendung auf Ressourcen zur Verfügung (GET,PUT,POST,DELETE) ‣ Ressourcen sind Datenzentriert (CRUD) ‣ Zustandslose Kommunikation (Stateless) 6
  • 7. DOAG 2015, Nürnberg HATEOS HYPERMEDIA AS THE ENGINE OF APPLICATION STATE ‣ Jede Antwort beinhaltet Links zu weiteren Aktionen ‣ Diese Links repräsentieren den aktuellen Zustand der Ressource / Applikation mit Ihrem Inhalt und Aktionen ‣ Ein Klient kennt im Prinzip nur eine URL zu einer Ressource / Applikation. Weitere Inhalte und Aktionen werden zur Laufzeit mit jedem entsprechenden Response mitgeliefert. ‣ RESTful API „is driven by hypertext“ 7
  • 9. DOAG 2015, Nürnberg AGENDA Einleitung Architektur Showcase: ORDS, NODE.JS , ADF, Plain Java, OSB Bewertungsmatrix Fazit und Ausblick 9
  • 11. API Design - Swagger DEMO
  • 12. DOAG 2015, Nürnberg ARCHITEKTUR 12 Data Store Layer Business Rules / Logic / Process Layer Service Layer Client Layer Data Access Layer React HTMLJSCSS Client Node.js + Oracle Driver ORDS + WLS / Tomcat / Jetty WLS + JEE7+ ADF WLS + JEE7 WLS + JEE7 + OSB + SOAP WebService Oracle Database Oracle Jet HTMLJSCSS Client
  • 13. DOAG 2015, Nürnberg AGENDA Einleitung Architektur Showcase: ORDS, NODE.JS , ADF, Plain Java, OSB Bewertungsmatrix Fazit und Ausblick 13
  • 15. DOAG 2015, Nürnberg ORDS ARCHITEKTUR 15 Data Store Layer Business Rules / Logic / Process Layer Service Layer Abbildung und Routing von SQL und Transformation des Ergebnisses Client Layer SQL/PL-SQL - Land Data Access Layer ORDS + WLS / Tomcat / Jetty Oracle Database / NoSQL
  • 16. DOAG 2015, Nürnberg BEWERTUNG ORDS 16 ‣ Stärken: Sehr einfach für CRUD und Abfragen von Daten ‣ Schwächen: Modifikation des Request/Response - Zyklus ‣ Empfehlung ‣ RESTenable klassische Oracle Infrastruktur ohne weiteren Technology-Stack, Mobile Cloud Service ‣ Skills: Oracle SQL & PL/SQL, JSON, XML ‣ Tools: SQL Developer
  • 18. DOAG 2015, Nürnberg NODE.JS & ORACLE DB DRIVER ARCHITEKTUR 18 Data Store Layer Business Rules / Logic / Process Layer ? Service Layer JavaScript - Land Client Layer Data Access Layer Node.js + Oracle Driver Oracle Database
  • 19. DOAG 2015, Nürnberg BEWERTUNG NODE.JS & ORACLE DB DRIVERS 19 ‣ Stärken: JavaScript Land - Client und Server - Sehr hoher Freiheitsgrad ‣ Schwächen: Kein Out-Of-The-Box, Data Access Framework im Aufbau, Auswahl von zusätzlichen Modulen notwendig (Express, Swagger, u.a.) ‣ Empfehlung ‣ Strategische Entscheidung* -> JavaScript - Ökosystem ‣ Skills: JavaScript!, JSON/XML ‣ Tools: NODE.JS, ATOM, SWAGGER, MCS, <X>ify,… * Je nach Umfeld und Aufgabenstellung unausweichlich
  • 20. DOAG 2015, Nürnberg EMPFEHLUNG NODE.JS & ORACLE DB DRIVERS 20 Orawrap is a wrapper module for the Oracle Database driver for Node.js (node-oracledb). https://github.com/OraOpenSource/orawrap ‣ Pool Manager für die Verwaltung von Pool Storage, Zugriffsmethoden und Queuing von Connetion- Anfragen ‣ Connection Manager für die einfache Zugriff auf eine Database Connection (Automatisches öffnen und schliessen der Ressourcen) ‣ Unterstützung von Ausführung zentralisierten SQL Scripten mit unterschiedlichen Timings.
  • 21. DOAG 2015, Nürnberg REST MIT ADF 12.2.1+ ‣ ViewObjekt-Instanzen eines Application Modules können als REST-Resourcen exponiert werden ‣ Deklarativ / Wizard ‣ Generierung eines
 RESTWebService-
 Projektes ‣ Mehrversionsfähig-
 keit out-of-the-box 21
  • 22. DOAG 2015, Nürnberg 22 REST mit ADF DEMO
  • 23. DOAG 2015, Nürnberg ORACLE ADF (12.2.1+) ARCHITEKTUR 23 Data Store Layer Business Rules / Logic / Process Layer Service Layer Oracle Database Java-4GL-Framework-Land WLS ud Oracle ADF Client Layer Data Access Layer REST- Service (generiert) ADF / MAF REST DataControl ADF BC ApplicationModu le HTTP(S)/ REST ADF BC VO EO Oracle Database
  • 24. DOAG 2015, Nürnberg BEWERTUNG ORACLE ADF ‣ Stärken: Out-of-The Box, inkl. Metadaten, XML/JSON, Paginierung bei Collections, RESTDataControl ‣ Schwächen: Anpassbarkeit, Freiheitsgrad ‣ Empfehlung ‣ Bei Vorhandensein von ADF Business Components ‣ Skills: Java, ADF, JSON/XML, SQL, ggf. PL/SQL ‣ Tools: JDeveloper 24
  • 26. DOAG 2015, Nürnberg PLAIN JAVA ARCHITEKTUR 26 Data Store Layer Business Rules / Logic / Process Layer Service Layer Oracle Database Java - Land Application Server Client Layer Data Access Layer REST Resource @EJB Service EJB JPA Oracle Database
  • 27. DOAG 2015, Nürnberg BEWERTUNG PLAIN JAVA ‣ Stärken: Java-Standard, JAX-RS ‣ Schwächen: - ‣ Empfehlung ‣ Bei Vorhandensein von EJB, JPA, Java EE Knowhow ‣ Skills: Java, JAX-RS, JSON/XML, EJB, JPA, SQL ‣ Tools: Java IDE (Netbeans, Eclipse, JDev, IDEA etc) 27
  • 28. DOAG 2015, Nürnberg REST MIT OSB ‣ Integrierte Unterstützung im Proxy-Service! (Expose as REST Wizard. Anpassung Resourcen / Methoden / Parameter möglich) ‣ Nutzung vom Mediator für Transformation / Mapping von SOAP -> REST Service ‣ EJBs könnenen ebenso als REST-Service exponiert werden. ‣ Monitoring, Reporting, Security für die REST- Services inklusive! 28
  • 30. DOAG 2015, Nürnberg ORACLE OSB ARCHITEKTUR 30 Data Store Layer Business Rules / Logic / Process Layer Service Layer Oracle Database Enterprise-SOA/EAI-WebService-Land WLS und Oracle OSB Client Layer Data Access Layer REST-Proxy Service Mediator SOAP, EJB, etc
  • 31. DOAG 2015, Nürnberg BEWERTUNG OSB ‣ Stärken: Wiederverwendung und Integration in eine SOA-Architektur, Integriertes Monitoring ‣ Schwächen: Komplexe Infrastruktur: WLS, SOA, OSB ‣ Achtung: SOAP Services mit einer API- Fassade zu versehen könnte nicht überall bei der Verwendung auf Gegenliebe stoßen ‣ Empfehlung ‣ SOA/ESB ist strategische Plattform für Enterprise Application Integration ‣ Bei Vorhandensein von SOA Suite, OSB, Knowhow ‣ Skills: OSB, JDeveloper, XSL, XPATH, SOAP, JSON/XML … ‣ Tools: JDeveloper 31 SOAP ist RPC Style, REST API ist Ressource -Style
  • 32. DOAG 2015, Nürnberg AGENDA Einleitung Architektur Showcase: ORDS, NODE.JS , ADF, Plain Java, OSB Bewertungsmatrix Fazit und Ausblick 32
  • 34. DOAG 2015, Nürnberg BEWERTUNGSMATRIX 34 weniger mehr Infrastruktur und Produkt orientiert ORDS NODE.JS Plain Java ADF OSB Ansatz SQL-PL/SQL - Land JavaScript-Land Java-Land Java-4GL- Framework-Land SOA/EAI-Land Beherrschbar- keit Gut Gut Gut Befriedigend Herausfordernd Gewichtsklasse S M M L XXL Werkzeug/Tool- Kopplung Hoch Niedrig Niedrig Hoch Hoch Perspektive / Evolution Stark (Sehr) stark Mittel Partiell Partiell Maxime Das, was es kann reicht uns, später sehen wir weiter ! Was immer wir wollen, müssen/ können wir mit JavaScript machen Was immer wir wollen, müssen/ können wir mit Java machen Wir wollen nicht basteln, wir nutzen Produktfunktionen, um eine Lösungen zu bauen. Was immer da kommt, wir können es in unsere umfassende Integrationsstrategie im Unternehmen als Baustein einfügen !
  • 35. DOAG 2015, Nürnberg AGENDA Einleitung Architektur Showcase: ORDS, NODE.JS , ADF, Plain Java, OSB Bewertungsmatrix Fazit und Ausblick 35
  • 36. DOAG 2015, Nürnberg FAZIT & AUSBLICK ‣ „Cloud und Mobile sprechen REST“ ‣ REST-APIs verbessern die technische Architektur von Softwaresystemen ‣ REST-APIs benötigen ggfs. andere Infrastrukturbausteine wie Identity und Access Management oder ein API Management Werkzeug. ‣ Kombinierte Architekturen sind ggfs. zielführender (NODE.JS und ORDS, NODE.JS und Java, OSB und ADF) ‣ Allumfassendes strategisches Einheitskonzept war 1995 36
  • 37. DOAG 2015, Nürnberg WEITERE INFORMATIONEN ‣ Blog: JavaScript and Oracle
 https://jsao.io/ ‣ node.js und Oracle DB Driver 
 https://www.npmjs.com/package/oracledb ‣ node.js und Oracle DB Driver must read !
 https://jsao.io/2015/09/connection-request-queuing-with-the-node-js-driver/ ‣ REST API Design - Resource Modeling
 https://www.thoughtworks.com/insights/blog/
 rest-api-design-resource-modeling 37
  • 39. VIELEN DANK FÜR IHRE AUFMERKSAMKEIT HABEN SIE NOCH FRAGEN?
  • 40. Andreas Koop 40 NICHT VERPASSEN Ulrich Gerkmann Bartels Agilität und Microservices als Chance für Modernisierung? — Di, 17.11.2015 16:00 - 16:45 Stockholm —
  • 41. DOAG 2015, Nürnberg 41 Treffen Sie uns am Stand der scope alliance auf Ebene 1 Andreas
 Koop Ulrich Gerkmann-Bartels