All rights reserved Seite 1 Von der Steinzeit ins neue Jahrhundert Migration von APEX 4.2 auf 18.1 in die Cloud & Open ID Anbindung (Erfahrungsbericht) Christian Haag, DATA MART Consulting Oracle DWH Team
Inhalt Thematik (Einordnung des Projektbeispiels) Anforderungen und Ziele Herausforderungen Architektur / Komponenten Migration und Open ID Anbindung Lösungsbeschreibung / Erfahrungen Nutzen durch Migration Fazit All rights reserved Seite 2
Oracle Application Express Historie HTML DB 1.5 First Release HTML DB 1.6 Themes APEX 2.1 Oracle XE APEX 2.2 Packaged Applications APEX 3.1 Interactive Reports 2004 2005 2006 2007 2008 2009 2010 2011 2012-14 HTML DB 2.0 SQL Workshop APEX 3.0 Flash Charts PDF Printing Access Migration APEX 3.2 Oracle Forms to APEX Conversion All rights reserved Seite 3 APEX 4.0 Websheets Dynamic Actions Plug-Ins Team Development APEX 4.2.x Mobile HTML5 Packaged Apps APEX 4.1 Data Upload Error Handling ROWID APEX 5.0 Page Designer Universal Theme Modal Dialogs APEX 18.1 New JET Graphs IR Charts Social Login 2015 2018
Thematik Worum geht es? Migration einer bestehenden Anwendung von APEX 4.2 auf 18.1 in die Cloud Anwendung zur Sammlung von Daten und Berichterstattung Projektziele der Migration: Hardware-Upgrade durch aktuelle Exadata Maschinen Skalierbarere Umgebungen um kurzfristig auf Bottlenecks reagieren zu können Einfacheres Lizenzmodell Migration der darunterliegenden Exadata Datenbank in die Cloud Open ID Anbindung All rights reserved Seite 4
Anforderungen und Ziele Phase 1: Alte Anwendung per Lift & Shift in die Cloud zu migrieren Notwendige Anpassungen vornehmen An Open ID Service anbinden Phase 2 : Rebrush der alten Anwendung Anwendung sollte wieder modern wirken bei gleicher Funktionalität Phase 3 : Bestehende Funktionalität optimieren Neue Funktionalität reinbringen All rights reserved Seite 5
Herausforderungen Umgang mit Customizing Template Anpassungen mit geringem Aufwand Interactive Reports mit gleicher Funktionalität Komplexe Eingabeformulare mit APEX Collections Teilweise selbst implementiertes Session-Handling Drill-Down Reports mit Übergabe von Session Parametern Verwendete APEX Plugins migrieren oder durch gleichwertige ersetzen Tabular Forms mit PK Eigenes Fehlerhandling und Error Messages Mailing aus APEX heraus mit Mail Templates und HTML Editor Kundenspezifisches CSS All rights reserved Seite 6
Architektur und Komponenten All rights reserved Seite 7
APEX Migration von 4.2 auf 18.1 Export/Import des Workspaces von alter nach neuer Umgebung 1 Export der Applikation über APEX aus der alten Umgebung 2 Export der Images über APEX aus der alten Umgebung 3 Import der Applikation über APEX in die neue Umgebung 4 Import der Images über APEX in die neue Umgebung 5 Überprüfen und Bereinigen von Fehlern mit Hilfe des Upgradehelfers 6 All rights reserved Seite 8
Aufgabenstellungen bei der Migration! Import der Applikation in neue Umgebung schlug fehl: => Lösung: Ausführung des SQL Scripts im Backend! Einige Objekte mussten migriert werden auf neue Objekte:! Templates wurden nicht mehr richtig angezeigt z.b. wurden Page Regions alle untereinander statt nebeneinander angezeigt! CSS Stylesheets müssen aufwändig migriert werden All rights reserved Seite 9
Lösungsansätze Herausforderung Template Anpassungen mit geringem Aufwand Teilweise selbst implementiertes Session- Handling Verwendete APEX Plugins migrieren oder durch gleichwertige ersetzen Kundenspezifisches CSS Drill-Down Reports mit Übergabe von Session Parametern All rights reserved Seite 10 Lösung Die Spaltendarstellung wurde in 18.1 nicht korrekt übernommen => geringe Anpassungen Selbstgebaute Formulare mit APEX Collections Navigation Tree wird jetzt nativ unterstützt Über Theme Roller implementiert Umstellung auf neue Escaping Syntax um Cross-Scripting zu vermeiden
Multifaktor Authentifizierung mit Okta All rights reserved Seite 11
2FF Authentifizierung Anbindungsschritte 1 2 3 4 5 Registrierung der Applikation in Okta Definition einer Security Realm Erstellen der Client ID und des Secrets Pflegen der Web Credentials in APEX => Workspace Utilities Neues Autorisierungsschema einrichten ( Generic OAuth2 Provider ) All rights reserved Seite 12
Erfahrungswerte Migration innerhalb APEX gewohnt unkompliziert, allerdings teilweise Anpassungsaufwand durch stark veraltete Templates Gute Utilities in APEX um nach der Migration aufzuräumen CSS Migration sehr aufwändig Eingebundenes JavaScript funktioniert auch weiterhin Anbindung an Open ID problemlos, wenn Oauth2 Know-How vorhanden ist All rights reserved Seite 13
Nutzen durch die Migration Responsive Design dank Universal Theme und HTML5 Theme Roller erlaubt einfache Anpassung an CI Interactive Grids erlauben mehr Flexibilität mit Formularen Mehr Designvorlagen und Icons Seitenaufbau jetzt auch mit Drag&Drop Update von mehreren Attributen ohne die Seite zu verlassen Syntax Highlighting mit Auto Complete und Code Validator Native Pivot Reports Native Tree Navigation Touch-based Events Mehrere Interactive Reports pro Seite Security Erweiterungen All rights reserved Seite 14
Fazit Migration problemlos so lange kein Customizing verwendet wird APEX entwickelt sich von der Formularverwaltung zum Dashboarding Tool Wesentlich komfortableres Entwickeln durch übersichtlichere Seitenstruktur Wieder Supportfähig! All rights reserved Seite 15
All rights reserved Seite 16 Fragen
All rights reserved Seite 17 www.datamart.de
Oracle Application Express Nützliche Links Oracle Technology Network http://otn.oracle.com/apex APEX Community http://apex.oracle.com/community Oracle Learning Library http://www.oracle.com/oll Hosted evaluation site http://apex.oracle.com APEX Cloud Service http://cloud.oracle.com All rights reserved Seite 18