Inhaltsverzeichnis

Alle Kapitel aufklappen
Alle Kapitel zuklappen
Vorwort
15
Einleitung
17
Grundlagen
25
1 Einführung in die SAP HANA Cloud Platform
27
1.1 Einführung in die SAP HANA Cloud Platform
27
1.2 Die Cloud-Computing-Revolution
29
1.2.1 Was ist Cloud Computing?
29
1.2.2 Die Cloud-Computing-Servicemodelle verstehen
30
1.2.3 Historischer Hintergrund
35
1.3 Eine strategisches Bindeglied für SAP
37
1.3.1 Herausforderungen der hybriden Landschaft
37
1.3.2 Die Rolle der SAP HANA Cloud Platform
38
1.4 Zusammenfassung
39
2 Einrichtung und Inbetriebnahme
41
2.1 Benutzerzugriff für die SAP HANA Cloud Platform einrichten
41
2.1.1 Benutzerkonzept der SAP HANA Cloud Platform
42
2.1.2 Für einen kostenlosen Entwicklerzugriff registrieren
44
2.2 Inhalt des Angebots
47
2.2.1 Laufzeit-Container
47
2.2.2 Services der SAP HANA Cloud Platform
53
2.2.3 Weiterführende Services
54
2.3 Entwicklungstools der SAP HANA Cloud Platform installieren
56
2.3.1 Eclipse IDE einrichten
56
2.3.2 SAP HANA Cloud Platform SDK herunterladen
63
2.3.3 Lokale Laufzeitumgebung einrichten
65
2.3.4 SAP Java Virtual Machine installieren
67
2.4 Zusammenfassung
70
Entwicklungskonzepte
71
3 Java-Anwendungen entwickeln
73
3.1 Überblick
74
3.2 Java-Webanwendungen erstellen
75
3.2.1 Dynamic Web Project in Eclipse anlegen
75
3.2.2 Servlet-basierten Controller aufbauen
80
3.2.3 Präsentationsebene mithilfe von JSPs implementieren
83
3.2.4 Anwendung lokal testen
86
3.3 Mit EJBs arbeiten
89
3.3.1 Refactoring für EJBs
89
3.3.2 Geschäftslogik in einer EJB implementieren
92
3.3.3 EJBs in Servlets und JSPs einfügen
94
3.4 Debugging und Tuning der Java-Anwendungen
98
3.4.1 Debugging einer Java-Webanwendung
98
3.4.2 Laufzeitanalyse (Profiling) von Java-Webanwendungen
102
3.5 Nächste Schritte
106
3.6 Zusammenfassung
107
4 Verwaltung und Deployment von JavaAnwendungen
109
4.1 Entwicklungszyklus im Überblick
109
4.2 Deployment von Java-Anwendungen
112
4.2.1 Deployment mithilfe der Eclipse IDE
112
4.2.2 Deployment mithilfe des Console Clients
123
4.2.3 Deployment-Monitoring
129
4.2.4 Logging- und Tracing-Konzepte
133
4.3 Quellcode-Management
139
4.3.1 Einführung in Git und GitHub
139
4.3.2 Erste Schritte mit EGit
140
4.3.3 Ein Git Repositorymit GitHub definieren
143
4.3.4 Git Repository in Eclipse klonen
145
4.3.5 Projekte zur Quellcode-Verwaltung hinzufügen
148
4.3.6 Änderungen einchecken
150
4.3.7 Ausblick
153
4.4 Build-Automatisierung mit Apache Maven und Ant
154
4.4.1 Erste Schritte mit Apache Maven
154
4.4.2 Mit Apache Ant arbeiten
164
4.5 Continuous Integration mit Jenkins
166
4.5.1 Einführung in Jenkins
167
4.5.2 Jenkins auf der SAP HANA Cloud Platform installieren
167
4.5.3 Schritt für Schritt zur Continuous Integration
168
4.6 Zusammenfassung
170
5 Entwicklung nativer Anwendungen für SAP HANA
171
5.1 Überblick
172
5.2 Erste Schritte
174
5.2.1 HANA-Instanz in der Testumgebung erstellen
175
5.2.2 Mit Eclipse und den Entwicklungstools für SAP HANA arbeiten
176
5.2.3 Mit der SAP HANA Web-Based Development Workbench arbeiten
183
5.3 XS-Projekt in Eclipse anlegen
185
5.4 Datenmodell für die Anwendung aufbauen
189
5.4.1 Persistenzmodell über Core Data Services definieren
190
5.4.2 Datenmodell als OData-Service veröffentlichen
193
5.4.3 Datenmodell über serverseitiges JavaScript verwenden
196
5.5 Anwendungsoberfläche entwickeln
197
5.6 Feintuning
199
5.6.1 Deskriptor-Datei für die Anwendung erstellen
199
5.6.2 Datei zum Zugriff auf die Anwendung definieren
201
5.6.3 Rolle für den anzeigenden Zugriff definieren
203
5.7 Deployment und Testen
206
5.7.1 XS-Projekt aktivieren
206
5.7.2 Anzeigerolle zu einem Benutzer-Account zuweisen
208
5.7.3 Testdaten importieren
209
5.7.4 Anwendung starten
212
5.8 Zusammenfassung
216
6 Cloud-Services aufrufen
217
6.1 Überblick
217
6.2 Persistence-Service verwenden
220
6.2.1 Konzeptüberblick
220
6.2.2 Datenbankschemata verwalten
221
6.2.3 Mit der Java Persistence API arbeiten
228
6.2.4 Mit Java Database Connectivity arbeiten
245
6.2.5 Konzepte zur Datenbankadministration
251
6.3 Connectivity-Service verwenden
262
6.3.1 Konzeptorientierter Überblick
262
6.3.2 Mit Destinationen arbeiten
265
6.3.3 Fallbeispiel: On-Premise-RFC-Funktionen aufrufen
269
6.3.4 Fallbeispiel: RESTful-Webservice verwenden
278
6.3.5 Fallbeispiel: E-Mail-Nachricht senden
281
6.4 Document-Service verwenden
285
6.4.1 Konzeptüberblick
286
6.4.2 Mit der OpenCMIS-Schnittstelle arbeiten
287
6.4.3 Externe Verwendung des Document-Services
291
6.5 Zusammenfassung
291
7 HTML5-Anwendungen entwickeln
293
7.1 Überblick
294
7.2 Erste Schritte
295
7.2.1 HTML5-Anwendung anlegen
295
7.2.2 Auf das Git Repository zugreifen
297
7.2.3 Mit der SAP Web IDE arbeiten
298
7.2.4 HTML5-Anwendungsinhalte im SAP HCP Cockpit aktivieren
311
7.2.5 Fertiges Produkt testen
312
7.3 Weiterführende Konzepte
313
7.3.1 Mit dem Anwendungsdeskriptor arbeiten
313
7.3.2 SAPUI5-Inhalte einbinden
315
7.3.3 Zugriff auf externe Ressourcen
316
7.3.4 Anwendungssicherheit konfigurieren
319
7.3.5 Die fertige Anwendung
322
7.4 Zusammenfassung
326
8 Cloud-Anwendungen sichern
327
8.1 Überblick
327
8.2 Einführung in Java-EE-Sicherheitskonzepte
329
8.2.1 Java-EE-Sicherheitsmodell
329
8.2.2 Technische Grundlagen
331
8.3 Deklarative Berechtigungsimplementierung mit Java
333
8.3.1 Authentifizierungsmethode konfigurieren
333
8.3.2 Berechtigungsrollen und -einschränkungen definieren
336
8.3.3 Rollenzuweisung im SAP HCP Cockpit
338
8.4 Programmatische Sicherheit in Java implementieren
341
8.4.1 Berechtigungen programmatisch prüfen
341
8.4.2 Mit der Benutzerverwaltungsschnittstelle arbeiten
343
8.4.3 Mit der Authentifizierungsschnittstelle arbeiten
345
8.4.4 Mit der Kennwortspeicherungsschnittstelle arbeiten
347
8.4.5 Schutz vor XSS-Angriffen
349
8.5 Authentifizierung und Berechtigungen mit SAML 2.0
353
8.5.1 SAML im Überblick
354
8.5.2 Vertrauenswürdigen Identity Provider konfigurieren
356
8.5.3 Assertion-basierte Gruppenzuordnung implementieren
361
8.6 Webressourcen über OAuth 2.0 schützen
366
8.6.1 Was ist OAuth?
367
8.6.2 OAuth-Berechtigungsfluss
369
8.6.3 Webressourcen über OAuth sichern
372
8.6.4 OAuth-Clients entwickeln und konfigurieren
375
8.7 Zusammenfassung
382
Weiterführende Konzepte
383
9 Mit dem SAP HANA Cloud Portal arbeiten
385
9.1 Einführung
385
9.1.1 Was ist das SAP HANA Cloud Portal?
386
9.1.2 Architekturüberblick
388
9.1.3 Wie wird das SAP HANA Cloud Portal verwendet?
391
9.2 Content-Modell des SAP HANA Cloud Portals
392
9.3 Inhalte für das SAP HANA Cloud Portal entwickeln
393
9.3.1 OpenSocial-Widgets erstellen
393
9.3.2 Funktionen des SAP HANA Cloud Portals verwenden
400
9.3.3 Vorhandene Webanwendungen anpassen
406
9.3.4 Widgets zum Content Catalog des Portals hinzufügen
407
9.4 Fallbeispiel: eine benutzerdefinierte Portalseite erstellen
409
9.4.1 Website im Site Directory erstellen
410
9.4.2 Seitenhierarchie der Website einrichten
421
9.4.3 Inhalt zu den Seiten hinzufügen
425
9.4.4 Website veröffentlichen und testen
431
9.5 Nächste Schritte
434
9.6 Zusammenfassung
434
10 Einführung in SAP HANA Cloud Integration
435
10.1 Überblick
435
10.2 Anwendungsfälle
438
10.3 Erste Schritte in der Eclipse IDE
440
10.3.1 Plug-ins für SAP HANA Cloud Integration installieren
440
10.3.2 Eclipse konfigurieren
442
10.4 Umsetzung eines einfachen SOAP-zu-SOAP-Szenarios
444
10.4.1 Integrationsfluss anlegen
444
10.4.2 Sender- und Empfängersysteme konfigurieren
447
10.4.3 WSDL-Dateien aus SAP PI bzw. dem lokalen Dateisystem importieren
447
10.4.4 Parameterdatei anlegen
448
10.4.5 Mapping zwischen Sender- und Empfängersystemen
449
10.4.6 Kommunikationskanäle für Sender und Empfänger konfigurieren
450
10.4.7 Deployment des Integrationsprojekts
451
10.4.8 Monitoring
451
10.5 Einführung in die Weboberfläche für SAP HANA Cloud Integration
452
10.5.1 Bereich »Discover« (Integration Content Catalog)
453
10.5.2 Bereich »Design«
456
10.5.3 Bereich »Run«
460
10.5.4 Bereich »Monitor«
460
10.6 Zusammenfassung
462
11 Erweiterungsszenarien mit der SAP HANA Cloud Platform
463
11.1 Bedarf an Erweiterungen für Software-as-a-Service-Lösungen
464
11.2 Architektur einer Erweiterung
466
11.2.1 Frontend-Schicht einer Erweiterung
470
11.2.2 Backend-Schicht einer Erweiterung
476
11.2.3 Verbindungsschicht einer Erweiterung
479
11.3 Integrationspunkte für die Erweiterung von SAPCloud-Lösungen
481
11.3.1 Benutzerdefinierte Business-Objekte und Ansichten
482
11.3.2 Workflows
483
11.3.3 Rollen und Berechtigungen
483
11.3.4 API-Clients
484
11.3.5 Regeln
484
11.3.6 Konfigurierbare UIs
485
11.3.7 Kundeneigener Code
485
11.3.8 Kacheln auf der Startseite konfigurieren
485
11.3.9 Navigation konfigurieren
486
11.4 SuccessFactors mit HCP-Anwendungen erweitern
487
11.4.1 Verwaltungsschichten von SuccessFactors
487
11.4.2 Account-Onboarding
489
11.4.3 Deployment Ihrer ersten SuccessFactors-Erweiterung
493
11.4.4 SuccessFactors-Erweiterungen verwalten
494
11.4.5 SuccessFactors-APIs
497
11.4.6 Kundeneigene MDF-Objekte erstellen und über die SAP HCP verwenden
502
11.4.7 Kundeneigene Kacheln für die Startseite mit der SAP HCP erstellen
502
11.4.8 Benutzerdefinierte Navigationseinträge verwalten
506
11.4.9 Fehler in SuccessFactors-Erweiterungen beheben
507
11.5 Zusammenfassung
512
12 SAP HANA Cloud Platform Mobile Services
515
12.1 Überblick
517
12.2 Anwendungsentwicklung mit Cordova und der SAP Web IDE
520
12.2.1 Architektur einer Cordova-Anwendung
520
12.2.2 SAPs Tool-Kette für die hybride Cordova-Entwicklung
521
12.3 Softwarevoraussetzungen
522
12.3.1 SAP Mobile Platform SDK
523
12.3.2 Geräte-SDKs
524
12.3.3 Testinstanz der SAP HANA Cloud Platform Mobile Services
524
12.3.4 SAP Web IDE Hybrid App Toolkit
525
12.4 Am häufigsten verwendete Komponenten
525
12.4.1 Anmeldung: Gerätregistrierung und Authentifizierung
525
12.4.2 Push-Benachrichtigung
526
12.4.3 (Offline-)Betrieb
527
12.5 Einfache hybride Anwendung mithilfe der SAP HCPms und der SAP Web IDE erstellen
529
12.5.1 Deployment eines OData-Test-Webservices
530
12.5.2 HCP-Destination für den ESPM-OData-Service erstellen
533
12.5.3 SAP Web IDE für die HCPms-Entwicklung konfigurieren
534
12.5.4 Neues Kapsel-Projekt erstellen
535
12.5.5 HCPms-Anwendung über die HCPms-Administrationskonsole erstellen
540
12.5.6 Review des vom Assistenten erzeugten Codes
543
12.5.7 Testen der Anwendung
547
12.6 Echte Mobile-Funktionen hinzufügen
553
12.6.1 Betrieb ohne Netzanbindung: das Offline-Plug-in
553
12.6.2 Push-Benachrichtigungen
556
12.7 Zusammenfassung
562
Die Autoren
563
Index
565