Leseprobe In dieser Leseprobe erfahren Sie, welche Vorbereitungen Sie für die Anwendungsentwicklung auf der SAP HANA Cloud Platform treffen müssen. Sie lernen die Zugangsmöglichkeiten kennen und richten sich ein kostenloses Entwicklerkonto ein. Außerdem werden die Installa- tion und Konfiguration aller relevanten Tools dargestellt, damit Sie schnellstmöglich mit der Entwicklung produktionsreifer Anwendungen beginnen können. James Wood SAP HANA Cloud Platform – Das Handbuch für Entwickler 576 Seiten, gebunden, Juli 2015 69,90 Euro, ISBN 978-3-8362-3862-5 www.sap-press.de/3912 »Einrichtung und Inbetriebnahme« Inhalt Index Der Autor Leseprobe weiterempfehlen Wissen aus erster Hand.
30
Embed
SAP HANA Cloud Platform – Das Handbuch für Entwickler
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
LeseprobeIn dieser Leseprobe erfahren Sie, welche Vorbereitungen Sie für die Anwendungsentwicklung auf der SAP HANA Cloud Platform treffen müssen. Sie lernen die Zugangsmöglichkeiten kennen und richten sich ein kostenloses Entwicklerkonto ein. Außerdem werden die Installa-tion und Konfiguration aller relevanten Tools dargestellt, damit Sie schnellstmöglich mit der Entwicklung produktionsreifer Anwendungen beginnen können.
James Wood
SAP HANA Cloud Platform – Das Handbuch für Entwickler576 Seiten, gebunden, Juli 2015 69,90 Euro, ISBN 978-3-8362-3862-5
In diesem Kapitel erfahren Sie, welche Vorbereitungen Sie für die Anwendungsentwicklung auf der SAP HCP treffen müssen. Nach Durcharbeitung des Kapitels werden Sie alle Voraussetzungen für die Entwicklung produktionsreifer Anwendungen auf der Plattform erfüllt haben.
2 Einrichtung und Inbetriebnahme
Jetzt, da Sie das Konzept hinter der SAP HANA Cloud Platform (SAP HCP)kennen, möchten Sie sie wahrscheinlich direkt ausprobieren. Damit fangenwir in Kapitel 3, »Java-Anwendungen entwickeln«, an. In diesem Kapitelbefassen wir uns zunächst mit den administrativen Aufgaben.
Als Allererstes müssen wir uns mit dem Entwickler-Account für die SAP HCPbefassen, bevor wir mit der wirklichen Arbeit auf der Plattform beginnenkönnen. Mit diesem Account melden Sie sich an der Plattform an, weisenRessourcen zu, stellen Anwendungen bereit und vieles mehr. In Abschnitt2.1, »Benutzerzugriff für die SAP HANA Cloud Platform einrichten«,beschreiben wir, wie Sie an den Account gelangen. In Abschnitt 2.2, »Inhaltdes Angebots«, sehen wir uns an, was ein solches Benutzerkonto beinhaltet.In Abschnitt 2.3, »Entwicklungstools der SAP HANA Cloud Platform instal-lieren«, erfahren Sie dann, wie Sie die Entwicklungstools der SAP HCP aufIhrem lokalen Rechner einrichten können. Wenn diese Tools implementiertsind, können wir in Kapitel 3 mit der eigentlichen Anwendungsentwicklunganfangen.
2.1 Benutzerzugriff für die SAP HANA Cloud Platform einrichten
Um auf die SAP HCP zugreifen zu können, müssen Sie einen Account bei SAPanlegen. In diesem Abschnitt erläutern wir die verschiedenen von SAPbereitgestellten Benutzerkontoarten und deren Unterschiede. Wir beschrei-ben auch, wie Sie ein kostenloses Entwicklerkonto einrichten können, mitdem Sie die SAP HCP testen können.
3862.book Seite 41 Mittwoch, 1. Juli 2015 11:54 11
Einrichtung und Inbetriebnahme2
42
2.1.1 Benutzerkonzept der SAP HANA Cloud Platform
In vielerlei Hinsicht ähneln HCP-Accounts Benutzerkonten, die Sie bei Ver-sorgungsunternehmen einrichten können, wie z. B. bei Ihrem Stromanbieteroder Internet Service Provider. Wenn Sie schon einmal so ein Konto einge-richtet haben, kennen Sie die Prozedur:
1. Zunächst wählen Sie eine der verschiedenen bereitgestellten Kontoartenbzw. ein Serviceangebot aus.
2. Als Nächstes gehen Sie eine Art Vertrag ein, in dem Sie als Kunde zustim-men, eine bestimmte Gebühr zu bezahlen, und der Anbieter zustimmt, dieangeforderten Services gemäß den im Vertrag definierten Service LevelAgreements (SLAs) bereitzustellen.
Im Kontext der SAP HCP werden Benutzerkonten dazu verwendet, denUmfang der Ressourcen bzw. Services zu definieren, die der Kunde von SAPerhalten möchte. Sobald der Kunde ein Konto eingerichtet hat, kann er damitauf die Plattform zugreifen, Anwendungen entwickeln und vieles mehr.
Zum Veröffentlichungszeitpunkt dieses Buches gibt es drei verschiedeneSAP-Kontoarten: Entwickler, Kunde und Partner. Diese Kontoarten unter-scheiden sich bezüglich des Preismodells, der Menge der zugewiesenencloud-basierten Ressourcen und der Nutzungsbedingungen. In den folgen-den Abschnitten erläutern wir diese verfügbaren Kontoarten im Einzelnen.
Entwicklerzugänge
Bei der ersten Kontoart handelt es sich um den kostenlosen Entwicklerzu-griff. Diese Kontoart ist für Entwickler vorgesehen, die die SAP HCP und ihreFunktionen kennenlernen möchten. Im Gegensatz zu anderen SAP TrialAccounts, mit denen Sie vielleicht bereits gearbeitet haben, verfällt das HCP-Entwicklerkonto nie; Sie können es also über einen beliebig langen Zeitraumals Testkonto nutzen.
Entwicklerkonten ermöglichen den Zugriff auf den Großteil der auf der SAPHCP zur Verfügung gestellten Funktionen und Services. Da es sich jedoch umein kostenloses Konto handelt, beschränkt SAP die Menge an Ressourcen,die Sie mit diesem Konto nutzen können. Während wir dieses Buch schrei-ben, gibt es für Entwickler-Accounts folgende Einschränkungen:
� Es kann nur eine begrenzte Anzahl an Anwendungen gleichzeitig ausge-führt werden.
3862.book Seite 42 Mittwoch, 1. Juli 2015 11:54 11
Benutzerzugriff für die SAP HANA Cloud Platform einrichten 2.1
43
� Nur 1 GB Datenbankspeicher und 1 GB Dokumentenspeicher stehen zurVerfügung.
� Die Nutzung des Kontos ist auf einen Anwender beschränkt.
Kundenkonten
Wie der Name bereits vermuten lässt, handelt es sich bei Kundenkonten umKonten, die Kunden von SAP kaufen können, um produktive Anwendungenin der Cloud zu hosten. Im Gegensatz zu den eingeschränkten Entwickler-Accounts bieten Kundenkonten vollständigen Zugriff auf produktive HCP-Services und Support von SAP rund um die Uhr.
Um Support für viele verschiedene Kundentypen anbieten zu können, stelltSAP zahlreiche Konfigurationsoptionen bereit, aus denen Kunden die für sieoptimale Variante wählen können. Preise und eine Übersicht über die ver-schiedenen Konfigurationsoptionen erhalten Sie, wenn Sie sich auf dem SAPHANA Marketplace unter http://marketplace.saphana.com/New/SAP-HANA-App-Services/p/1808 anmelden. In den meisten Fällen können Sie diegewünschte Konfiguration direkt über den SAP HANA Marketplace auswäh-len und den Zugriff erwerben. Nach dem ersten Kauf können Kunden beiBedarf weitere Ressourcen von SAP zusätzlich erwerben.
Regionale Rechenzentren
Um schnelle Antwortzeiten für produktive Anwendungen sicherzustellen, werdenKundenkonten in regionalen Rechenzentren gehostet, die sich in der Nähe derAnwenderbasis befinden. Während wir dies schreiben, deckt SAP mit drei Rechen-zentren die Bereiche Amerika, Europa und Asien/Pazifik ab.
Partnerzugriffe
Diese Art des Benutzerkontos wird für SAP-Partner bereitgestellt, die cloud-basierte Anwendungen erstellen und an Kunden verkaufen möchten. Wasdie Art des Zugriff anbelangt, ähneln Partnerkonten den Kundenkonten, dasie Zugriff auf alle produktiven Services der SAP HCP bieten. Da dieser Kon-totyp jedoch normalerweise für die Entwicklung und Erstellung von Proto-typen verwendet wird, ist die Menge an zugewiesenen Ressourcen meistenskleiner als bei einem normalen Kundenkonto. Natürlich können Partner wei-tere Ressourcen bei Bedarf von SAP hinzukaufen.
3862.book Seite 43 Mittwoch, 1. Juli 2015 11:54 11
Einrichtung und Inbetriebnahme2
44
Weitere Informationen über diese Zugriffsart und das SAP-PartnerEdge-Pro-gramm erhalten Sie nach Ihrer Anmeldung unter https://www.sapapps-developmentpartnercenter.com.
2.1.2 Für einen kostenlosen Entwicklerzugriff registrieren
Falls Sie mit diesem Buch das erste Mal die Welt der SAP HCP betreten, ist essinnvoll, sich zunächst für ein kostenloses Entwicklerkonto zu registrieren.So melden Sie sich für ein Entwicklerkonto an:
1. Melden Sie sich auf der Startseite für Trial Accounts der SAP HCP unterhttps://account.hanatrial.ondemand.com an (siehe Abbildung 2.1). KlickenSie dazu auf die Schaltfläche Log On.
Abbildung 2.1 Startseite zur Registrierung für einen kostenlosen Entwicklerzugriff auf die SAP HCP
3862.book Seite 44 Mittwoch, 1. Juli 2015 11:54 11
Benutzerzugriff für die SAP HANA Cloud Platform einrichten 2.1
45
2. Sie sehen nun die Seite Log On (siehe Abbildung 2.2). Hier haben Sie zweiMöglichkeiten:
� Falls Sie bereits eine SAP-ID oder ein Benutzerkonto für das SAP Com-munity Network (SCN) besitzen, können Sie Ihre Daten unter Log On
eingeben und auf die Schaltfläche Log On klicken, um dieses Konto mitIhrem SAP-HCP-Entwicklerkonto zu verknüpfen. Nun müssen Sie nurnoch der Lizenzvereinbarung zustimmen, und schon können Sie star-ten.
Abbildung 2.2 Kundendaten eingeben und Konten verknüpfen
� Wenn Sie noch keine SAP-ID bzw. kein SCN-Konto haben, müssen Sieeins erstellen, indem Sie auf die Schaltfläche Register Now auf der lin-ken Seite in Abbildung 2.2 klicken. Es erscheint das in Abbildung 2.3dargestellte Fenster Registration. Hier müssen Sie einige Kontaktdateneingeben und den allgemeinen Geschäftsbedingungen zustimmen, umsich registrieren zu können.
Nachdem Sie das Formular gesendet haben, erhalten Sie eine Bestäti-gungs-E-Mail, über die Sie die Registrierung bestätigen und das Kontoaktivieren können.
3862.book Seite 45 Mittwoch, 1. Juli 2015 11:54 11
Einrichtung und Inbetriebnahme2
46
Abbildung 2.3 Registrierung für ein neues Benutzerkonto
Unabhängig davon, wie Sie das Konto erstellen, endet der Prozess damit,dass Sie am SAP HCP Cockpit angemeldet sind (siehe Abbildung 2.4). Wie Siesich vielleicht vorstellen können, werden Sie in diesem Cockpit viel Zeit fürdie Entwicklung und Bereitstellung von Anwendungen, die Bereitstellungvon Ressourcen etc. verbringen. Sie sollten daher die Cockpit-Seite als Lese-zeichen speichern: https://account.hanatrial.ondemand.com/cockpit.
Wenn Sie das erste Mal auf die SAP HCP zugreifen, sollten Sie sich das Cock-pit in Ruhe ansehen und die verschiedenen Registerkarten kennenlernen. Sokönnen Sie sich einen Überblick über die mit Ihrem HCP-Benutzerkonto ver-fügbaren Funktionen verschaffen.
3862.book Seite 46 Mittwoch, 1. Juli 2015 11:54 11
Inhalt des Angebots 2.2
47
Abbildung 2.4 Die erste Anmeldung am SAP HCP Cockpit
2.2 Inhalt des Angebots
Nun verfügen Sie über ein nagelneues Benutzerkonto für die SAP HCP. Neh-men Sie sich einen Moment Zeit, um das Angebot der SAP HCP näher zubetrachten. Dieser Abschnitt hilft Ihnen nicht nur, die Funktionen der SAPHCP aus technischer Sicht besser zu verstehen, sondern auch, die Tools zuermitteln, die Sie installieren und konfigurieren müssen, um mit der Ent-wicklung von HCP-Anwendungen beginnen zu können.
2.2.1 Laufzeit-Container
Wie bereits in Kapitel 1, »Einführung in die SAP HANA Cloud Platform«,erwähnt, wurde die SAP HCP von Grund auf neu konzipiert, um verschie-dene Programmiermodelle zu unterstützen. Dieser BYOL-Ansatz (Bring YourOwn Language, Verwendung der eigenen Sprache) senkt die Einstiegsbarri-ere zur SAP HCP, da Entwicklungsteams bei einer Migration auf die Platt-form bereits vorhandene Fähigkeiten nutzen können.
3862.book Seite 47 Mittwoch, 1. Juli 2015 11:54 11
Einrichtung und Inbetriebnahme2
48
Um Unterstützung für viele Programmiersprachen zu bieten, arbeitet dieSAP HCP mit einer Vielzahl modularer und leichtgewichtiger Laufzeitcon-tainer. Diese Container sorgen für eine sichere und skalierbare Laufzeitum-gebung zur Ausführung der Anwendungen, die auf einem bestimmten Pro-grammiermodell (z. B. Java) basieren.
Im Folgenden werden wir näher auf die mit der SAP HCP bereitgestelltenLaufzeitcontainer eingehen. Außerdem erfahren Sie, welche weiteren Con-tainerarten, SAP in nächster Zeit umsetzen möchte.
Java-Laufzeitumgebung
Schon als die SAP HCP noch unter dem Namen NEO bekannt war, bot siebereits eine hervorragende Unterstützung Java-basierter Anwendungsent-wicklung. Aus technischer Sicht werden die Java-Anwendungen, die wir ent-wickeln, in einem besonderen Laufzeitcontainer namens Java-Laufzeitumge-bung bereitgestellt. Abbildung 2.5 stellt die grundlegende Architektur diesesContainers dar. Wie Sie sehen können, bildet die Compute Unit die Grund-lage für diese Laufzeitumgebung. Als Anwender der SAP HCP können Siesich Compute Unit als virtualisierte Host-Maschinen mit eigenen CPU(s),Hauptspeicher, Festplattenspeicher und einem installierten Betriebssystemvorstellen.
Abbildung 2.5 Architektur der Java-Laufzeitumgebung
Java-Webanwendung
Anwendungslaufzeit-Container
Java Virtual Machine (JVM)
Compute Unit
3862.book Seite 48 Mittwoch, 1. Juli 2015 11:54 11
Inhalt des Angebots 2.2
49
Aus der Perspektive der Java-Entwicklung bildet die Java Virtual Machine(JVM) die Grundlage einer Compute Unit. Hier nutzt SAP eine eigene JVMnamens SAP JVM, die von Oracles HotSpot JVM abgeleitet wurde. Vergli-chen mit der von Oracle bereitgestellten Standard-JVM, bietet die SAP JVMviele nützliche Funktionen in den Bereichen Debugging, Speicher-Profilingund Instrumentierung.
Auf die SAP JVM setzt der Laufzeit-Container auf, den Sie in der Mitte desArchitekturdiagramms in Abbildung 2.5 sehen. Wenn Sie sich mit der Enter-prise-Java-Entwicklung auskennen, können Sie sich den Laufzeit-Containerals Webcontainer vorstellen – etwa wie Apache Tomcat oder einen anderenbeliebigen der marktführenden Java-EE-Anwendungscontainer. Der Lauf-zeit-Container stellt Java-basierten Webanwendungen alle Bibliotheken undServices zur Verfügung, die sie für ihre Aufgaben benötigen.
Zum Veröffentlichungszeitpunkt dieses Buches ist die Konfiguration des Lauf-zeit-Containers bei SAP über drei verschiedene Profile möglich:
� Java EE 6 Web Dieses Profil beinhaltet alle APIs, die mit Java EE 6 Web angeboten wer-den. Zusätzlich zu den Servlets und JavaServer Pages (JSPs) stehen Ihnenu. a. Enterprise JavaBeans (EJBs), die Java Transaction API (JTA) und dieJava Persistence API (JPA) zur Verfügung. Diese APIs vereinfachen denEntwicklungsprozess für Unternehmensanwendungen, indem sie dieUmsetzung untergeordneter technischer Aspekte – etwa Transaktionsver-waltung, objektbezogene Persistenz etc. – übernehmen. Weitere Informa-tionen zum Profil Java EE 6 Web erhalten Sie im folgenden Infokasten.
� Java Web Laut der Onlinehilfe beinhaltet das Java-Web-Profil einen Teil der Java-EE-Standard-APIs, die ein eigenständiger Java-Web-Container normalerweiseumfasst. Ein Beispiel für einen typischen Webcontainer ist der beliebteApache-Tomcat-Container. Diese Container unterstützen die Entwicklungvon Java-Webanwendungen über Servlets, JSPs etc. Sie bieten jedoch keineUnterstützung für die gesamte Java-EE-Schnittstelle. Sie können also keineanderen Java-EE-basierten Technologien (wie EJBs) im Java-Web-Con-tainer nutzen. Natürlich haben Sie aber Zugriff auf die vollständige Java-SE-Bibliothek und die kundenspezifischen SAP-HCP-Service-Schnittstellen.
� Java Web Tomcat 7 Dieses Profil (das sich zum Zeitpunkt der Entstehung dieses Buches nochin der Beta-Veröffentlichungsphase befand) bietet ähnliche Funktionenwie das Java-Web-Profil. Der Hauptunterschied liegt darin, dass der Web-
3862.book Seite 49 Mittwoch, 1. Juli 2015 11:54 11
Einrichtung und Inbetriebnahme2
50
container für dieses Profil den Webserver Apache Tomcat 7 ohne Modifi-kationen nutzt. Das bedeutet, dass bestimmte cloud-basierte Services zurLaufzeit nicht verfügbar sind.
Was ist Java EE 6 Web?
Das Profil Java EE 6 Web wurde in Zusammenhang mit Java EE 6 veröffentlicht.Grundsätzlich können Sie sich das Profil als eine vereinfachte Version des Java-EE-Stacks vorstellen. Hier wurde ein Teil der üblichen APIs für die Entwicklung Java-basierter Webanwendungen in einem separaten Profil gebündelt, mit dessen HilfeAnbieter von Anwendungsservern einfachere Anwendungscontainer erstellen kön-nen. Solche Profile sind natürlich für Anbieter cloud-basierter Software wie SAPsinnvoll.
Als Entwickler meint man vielleicht, dass »einfacher« mit »weniger interessant«gleichzusetzen ist. In diesem Fall sind wir allerdings der Meinung, dass die APIs,auf die man verzichtet hat, wenig mit cloud-basierter Anwendungsentwicklung zutun haben. Es ist z. B. unwahrscheinlich, dass Sie bei der Entwicklung von Weban-wendungen in der Cloud RMI/CORBA-basierte Remote-Zugriffe benötigen. Wasandere Schnittstellen anbelangt, werden Sie feststellen, dass es cloud-basierte Ser-vices gibt, die ähnliche (und womöglich bessere) Funktionen als die fehlendenJava-EE-Schnittstellen aufweisen. Wir werden genügend Beispiele dazu im Laufedieses Buches beschreiben.
Ein weiterer Unterschied liegt in der Unterstützung von EJBs in Java EE 6 Web.Auch wenn das Profil die EJB-Entwicklung nicht unterstützt, nutzt es eine beson-dere Version namens EJB Lite. Bei EJB Lite handelt es sich um eine Teilmenge vonEJB 3.1. Diese Version unterstützt Session Beans (stateful und stateless), SingletonBeans und die entsprechenden containerbasierten Verwaltungsfunktionen. Es feh-len hier Message-Driven Beans, JAX-WS-Endpunkte, Remote-Zugriffe und dieRückwärtskompatibilität zu EJB 2. Da diese Funktionen für die Entwicklung vonWebanwendungen nicht wirklich notwendig sind, wirkt sich das Fehlen dieserFunktionen nicht auf unsere Art der Anwendungskonzeption aus, aber es ist wich-tig, die Unterschiede zu verstehen.
In Kapitel 3, »Java-Anwendungen entwickeln«, gehen wir näher auf die Java-basierte Anwendungsentwicklung ein.
Weitere Informationen
Im Internet erhalten Sie Zugriff auf die Java-Web-Hilfsdokumentation unter http://help.hana.ondemand.com. Gehen Sie im Bereich SAP HANA Cloud Platform zuJava Development � Runtime for Java, um mehr über die neuesten Innovationenzu diesem Thema zu erfahren.
3862.book Seite 50 Mittwoch, 1. Juli 2015 11:54 11
Inhalt des Angebots 2.2
51
HANA-Laufzeitumgebung
Eines der besonderen Merkmale der SAP HCP ist ihre Unterstützung des In-Memory Computings mit SAP HANA. Diese ist auf zwei Ebenen integriert:
� Einfacher Datenbankzugriff In diesem Szenario werden Anwendungen mit einer allgemeinen Pro-grammiersprache (wie Java) entwickelt, und SAP HANA wird als zugrundeliegende Datenbank verwendet. Dabei wird SAP HANA wie jedes andererelationale Datenbankmanagementsystem (RDBMS), das einen Standard-SQL-Zugriff gewährleistet, verwendet.
� Vollständige native HANA-Entwicklung In diesem Szenario werden eigenständige Anwendungen, basierend aufnativen HANA-Entwicklungsobjekten, entwickelt (z. B. SQLScript-basierteDatenbankprozeduren, serverseitiges JavaScript und benutzerdefinierteView-Typen). Dieser Ansatz ist ideal zur Entwicklung analytischer Anwen-dungen, die eine große Menge an Daten verarbeiten.
Im letzten Einsatzszenario werden die nativen HANA-Entwicklungsobjektein der HANA-Laufzeitumgebung zur Verfügung gestellt. Dabei handelt essich im Wesentlichen um eine cloud-basierte Instanz der SAP HANA Exten-ded Application Services (SAP HANA XS).
Was ist SAP HANA XS?
Falls Sie sich nicht mit SAP HANA XS auskennen, erhalten Sie hier eine kurze Über-sicht. SAP HANA XS ist ein mit allen Funktionen ausgestatteter Anwendungsser-ver, der auf die HANA-Datenbank aufsetzt. Mit diesem Anwendungsserver kannman Webanwendungen entwickeln, die auf Technologien wie SAPUI5 und server-seitigem JavaScript sowie nativen HANA-Entwicklungsobjekten (z. B. SQLScript-Prozeduren und Analysesichten) basieren.
Da SAP HANA XS auf die HANA-Datenbank aufsetzt (und nahtlos mit ihr integriertist), profitieren native Anwendungen, die auf diesem Anwendungsserver entwi-ckelt wurden, von den Vorteilen eines lokalen Datenzugriffs. Indem man den Auf-wand für die Übertragung von Daten von der Datenbankschicht auf die Anwen-dungsschicht umgeht, können native Anwendungen erstaunlich schnell großeMengen an Daten verarbeiten. Daher eignet sich SAP HANA XS hervorragend fürdie Entwicklung von Analyseanwendungen und Ähnlichem.
Innerhalb der SAP HCP spielt der Anwendungsserver SAP HANA XS eineähnliche Rolle wie die Java-Laufzeitumgebung: Es wird ein Anwendungsser-ver bereitgestellt, mit dem Sie Webanwendungen erstellen können. Hierkönnen Sie native HANA-Anwendungen fast genauso aufbauen wie bei derOn-Premise-Entwicklung solcher Anwendungen.
3862.book Seite 51 Mittwoch, 1. Juli 2015 11:54 11
Einrichtung und Inbetriebnahme2
52
Dies alles berücksichtigend, können wir uns nun der grundlegenden Archi-tektur einer nativen HANA-Anwendung, die auf der SAP HCP angebotenwird, zuwenden. Wie Sie in Abbildung 2.6 sehen, basiert die Clientschichtdieser Anwendung auf der SAPUI5-Technologie. Die SAPUI5-Inhalte werdenden Clients von der SAP HANA XS Engine zur Verfügung gestellt, die übereinen integrierten Webserver verfügt. Aufgrund des Standardverhaltens vonHTML5 kann dieser Inhalt auf PCs, Tablets oder Smartphones verarbeitetwerden, ohne dass Clientsoftware installiert werden muss (z. B. der SAP-GUI-Client).
Abbildung 2.6 Grundlegende Architektur einer nativen HANA-Anwendung
Serverseitig können Sie sehen, wie die Anwendungslogik zwischen der SAPHANA XS Engine und der zugrunde liegenden HANA-Datenbank verteiltwird. Welche Ebene(n) Sie für die Implementierung Ihrer Logik wählen,
SAP HCP
SAP-HANA-Laufzeit
SAP HANA XS(verfahrensorientierte Anwendungslogik)
3862.book Seite 52 Mittwoch, 1. Juli 2015 11:54 11
Inhalt des Angebots 2.2
53
hängt letztlich von den Anforderungen ab. Wenn Sie z. B. nur einfacheCRUD-Operationen (Create, Remove, Update und Display) ausführen, sollteStandard-SQL bzw. SQLScript normalerweise ausreichen. Wenn Sie zurErfüllung Ihrer Anforderungen jedoch viel Prozedurlogik benötigen, müssenSie eine allgemeinere Sprache verwenden – etwa serverseitiges JavaScript. Indiesem Fall ist es sinnvoll, die Funktionen der SAP HANA XS Engine imZusammenspiel mit SQL/SQLScript zu nutzen.
Die Kommunikationskanäle zwischen der Clientschicht und dem Backend,der SAP HANA XS Engine, sind meistens über das OData-Protokoll definiert.Dieses REST-basierte Protokoll wird für die Erstellung leichtgewichtigerWebservices verwendet, die von JavaScript- und SAPUI5-Widgets einfachverarbeitet werden können. In Kapitel 5, »Entwicklung nativer Anwendun-gen für SAP HANA«, lernen Sie die genauen Zusammenhänge kennen.
HTML5-Anwendungscontainer
Für UI-orientierte Anwendungsszenarien unterstützt die SAP HCP auch dieEntwicklung von HTML5-Anwendungen. Das Deployment dieser leichtge-wichtigen Anwendungen erfolgt in einem Git Repository, von dem aus diestatischen Ressourcen (z. B. HTML, JavaScript und CSS) über einen in dieSAP HCP integrierten gemeinsamen Dispatcher-Service verteilt werden. InKapitel 7, »HTML5-Anwendungen entwickeln«, gehen wir näher darauf ein.
Weitere Laufzeitcontainer in Sicht
Während der Entstehung dieses Buches hat SAP bekannt gegeben, dass derUmfang der Sprachenunterstützung in der SAP HCP über eine strategischePartnerschaft mit Cloud Foundry und Docker erheblich verbessert werdensoll. Sobald diese Angebote integriert sind, wird die SAP HCP dank verschie-dener neuer, allgemeinerer Laufzeitcontainer endlich volle Unterstützungfür das BYOL-Konzept bieten. Momentan muss die Unterstützung der meis-ten beliebten Cloud-Entwicklungssprachen über die Java-Laufzeitumgebungmithilfe von Drittanbieterimplementierungen wie JRuby, Jython etc. bereit-gestellt werden.
2.2.2 Services der SAP HANA Cloud Platform
Als echte PaaS-Lösung bietet die SAP HCP viel mehr als nur verschiedeneeigenständige Laufzeitcontainer. Sie umfasst eine Reihe von Cloud Servi-ces, die es ermöglichen, den Zugriff und die Verwendung cloud-basierter
3862.book Seite 53 Mittwoch, 1. Juli 2015 11:54 11
Einrichtung und Inbetriebnahme2
54
Ressourcen zu abstrahieren. Tabelle 2.1 enthält eine Liste der bekannterenServices, die derzeit auf der SAP HCP zur Verfügung stehen. Beachten Sie,dass das Serviceangebot kontinuierlich erweitert wird; es ist also sinnvoll,regelmäßig die Dokumentation zur SAP HANA Cloud nach neuen Services zudurchsuchen.
2.2.3 Weiterführende Services
Zusätzlich zu den in Abschnitt 2.2.2, »Services der SAP HANA Cloud Plat-form«, beschriebenen Basisservices wird das PaaS-Angebot der SAP HCPdurch verschiedene weiterführende Anwendungsservices abgerundet, diebesondere Funktionen bereitstellen, die in bestimmten cloud-basiertenAnwendungsszenarien benötigt werden. Im Folgenden stellen wir Ihneneinige der bekannteren Services aus diesem Angebot vor.
Service Beschreibung
Persistence-Service Dieser Service bildet eine Abstraktionsebene über den in der Cloud bereitgestellten relationalen Datenbankinstanzen. Diese Abstraktionsebene stellt Entwicklern eine gemein-same Oberfläche für den Zugriff auf die Datenbankinstanzen zur Verfügung und verbirgt die Komplexität der skalierbaren Datenbanken in der Cloud.
Connectivity-Service Dieser Service stellt Entwicklern die Mittel zur transparen-ten Kommunikation über Remote-Services bereit, die ent-weder vor Ort oder an einem beliebigen Ort über das Inter-net gehostet werden können.
Document-Service Dieser Service ermöglicht den Zugriff auf ein Content Repo-sitory zur Speicherung unstrukturierter Inhalte. Er kann bei Bedarf auch zur Implementierung eines virtualisierten Dateisystems verwendet werden.
Identity-Service Der Begriff Identity-Service bezieht sich auf eine Reihe sicherheitsbezogener Services oder Funktionen, die in die SAP HCP integriert wurden. Dazu gehören u. a. die Unter-stützung von SSO-Szenarien (Single Sign-on), föderierten Identitäten mit SAML (Security Assertion Markup Language) und einer Autorisierung, die auf dem OAuth-Protokoll basiert.
Feedback-Service Dieser Service stellt ein Framework für die Implementierung von Anwenderfeedback-Szenarien in Cloud-Anwendungen zur Verfügung.
Tabelle 2.1 Services der SAP HCP
3862.book Seite 54 Mittwoch, 1. Juli 2015 11:54 11
Inhalt des Angebots 2.2
55
SAP HANA Cloud Portal
Das SAP HANA Cloud Portal ist eine cloud-basierte Portallösung, mit dersich einfach leichtgewichtige Portalseiten erstellen lassen, um über eine ein-heitliche Benutzeroberfläche auf Cloud-Lösungen, Erweiterungen vonCloud-Lösungen und On-Premise-Inhalte zugreifen zu können. Durch dieVerwendung offener Standards wie HTML5 und OpenSocial erleichtert dasSAP HANA Cloud Portal die Integration von Inhalten aus verschiedenenQuellen, ohne dass das Rad neu erfunden werden muss. Wie das genaufunktioniert und wie das SAP HANA Cloud Portal einzusetzen ist, erfahrenSie in Kapitel 9, »Mit dem SAP HANA Cloud Portal arbeiten«.
SAP HANA Cloud Integration
In vielerlei Hinsicht können Sie sich SAP HANA Cloud Integration (SAP HCI)als eine cloud-basierte Version des On-Premise-SOA-Middleware-Tools vonSAP, SAP Process Integration (PI), vorstellen. SAP HCI ist also ein cloud-basierter Middlewareservice, mit dem Sie Integrationsszenarien in derCloud entwickeln können. Diese Szenarien benötigen Sie vielleicht für ein-malige Uploads von On-Premise-Daten oder für laufende Suchen in Echtzeitauf On-Premise-Systemen. Wir werden uns später in Kapitel 10, »Einfüh-rung in SAP HANA Cloud Integration«, noch eingehend mit SAP HCI ausein-andersetzen.
SAP HCP Mobile Services
Mit diesem Service können Entwickler mobile Anwendungen einführen.Einige der bekannteren Funktionen der SAP HCP Mobile Services sind fol-gende:
� Unterstützung des Benutzer-Onboardings
� Sicherheits- und Berechtigungsservices
� Unterstützung der Implementierung nativer Push-Meldungen
� Unterstützung der Implementierung eines Offline-Supports für mobileAnwendungen
� Verwaltung und Überwachung mobiler Anwendungen
Die SAP HCP Mobile Services werden in Kapitel 12 näher beschrieben.
3862.book Seite 55 Mittwoch, 1. Juli 2015 11:54 11
Einrichtung und Inbetriebnahme2
56
2.3 Entwicklungstools der SAP HANA Cloud Platform installieren
Im vorangegangenen Abschnitt haben Sie erfahren, wie SAP die Rolle derSAP HCP als offener und damit attraktiver Plattform für Entwickler hervor-hebt. Auch wenn diese Offenheit sicherlich gut ist, macht sie die Einrichtungunserer Entwicklungsumgebung ein wenig komplexer, da es so viele ver-schiedene Entwicklungsobjekte gibt, die berücksichtigt werden müssen.
In diesem Abschnitt befassen wir uns mit der typischen Einrichtung derTools, damit Sie die Werkzeuge zur Hand haben, die Sie bei der Bearbeitungder Beispiele in diesem Buch benötigen. »Typisch« ist hier hervorgehoben,da sich die Konfiguration der Werkzeuge von Entwickler zu Entwickler leichtunterscheiden wird. Da die SAP HCP auf Basis der erweiterbaren integriertenEclipse-Entwicklungsumgebung (Integrated Development Environment,IDE) standardisiert ist, machen sich diese Unterschiede jedoch nur hier undda bei der Installation einiger Plug-ins bemerkbar.
2.3.1 Eclipse IDE einrichten
SAP entschied sich dafür, das Tool-Set der SAP HCP auf Basis der Open-Source-IDE von Eclipse zu standardisieren. Dieser Ansatz ermöglicht es SAP,die Entwicklungsfunktionen der Basis-Eclipse-IDE zu nutzen und diese nurnach Bedarf durch HCP-spezifische Funktionen zu erweitern. Da Eclipseaußerdem unbestreitbar die beliebteste IDE weltweit ist, benötigt der durch-schnittliche Entwickler nur wenig oder gar keine Einführung.
In diesem Abschnitt beschreiben wir die Einrichtung einer neuen Eclipse-Instanz und die Installation der relevanten Plug-ins aus der Bibliothek derSAP-HCP-Werkzeuge.
Java SDK installieren
Bevor Sie Eclipse installieren können, müssen Sie zunächst sicherstellen,dass Sie die passende Java-Version auf Ihrem lokalen Rechner installierthaben. Auch wenn die neueren Versionen von Eclipse nur eine Installationder leichtgewichtigen Laufzeitumgebung für Java (Java Runtime Environ-ment, JRE) erfordern, empfehlen wir Ihnen, das vollständige Java SE Soft-ware Development Kit (SDK) zu installieren. Dies ist online unterwww.oracle.com/technetwork/java/javase/downloads/index.html erhältlich. Sostellen Sie sicher, dass Sie alle für die verschiedenen Entwicklungsschrittebenötigten Compiler-Tools zur Verfügung haben.
3862.book Seite 56 Mittwoch, 1. Juli 2015 11:54 11
Entwicklungstools der SAP HANA Cloud Platform installieren 2.3
57
Bei der Installation des Java SDKs sollten Sie die Version herunterladen, dieam besten zu dem gewünschten Laufzeit-Container-Profil passt, mit dem Siein der Java-Laufzeitumgebung arbeiten möchten (siehe Abschnitt 2.2.1,»Laufzeit-Container«). Während wir dieses Buch schreiben, basieren die ver-fügbaren Containerprofile z. B. auf den Java-EE-Versionen 6 und 7. WennSie also mit dem Profil Java Web Tomcat 7 arbeiten, sollten Sie die Java-SE-Version 7 herunterladen und konfigurieren.
Eclipse herunterladen und installieren
Um die Flexibilität zu optimieren, hat SAP die Entwicklungstools für die SAPHCP entwickelt, die mit den neuesten Versionen der Eclipse IDE kompatibelsind. Wenn Sie also bereits eine aktuelle Version von Eclipse haben, sollte esmöglich sein, die Entwicklungstools für die SAP HCP auf dieser Instanz zu ins-tallieren. Aufgrund der großen Anzahl von Plug-ins, die mit den Entwick-lungstools verknüpft sind, empfehlen wir Ihnen jedoch, eine separate Eclipse-Instanz für die HCP-Entwicklung herunterzuladen und zu konfigurieren.
Gehen Sie auf die Seite www.eclipse.org/downloads, um Eclipse herunterzula-den. Laden Sie sich von der Startseite Downloads die neueste Version vonEclipse IDE for Java Developers für Ihr Zielbetriebssystem herunter (sieheAbbildung 2.7).
Abbildung 2.7 Eclipse IDE für Java-Entwickler herunterladen
3862.book Seite 57 Mittwoch, 1. Juli 2015 11:54 11
Einrichtung und Inbetriebnahme2
58
Bei dem Installationspaket, das Sie herunterladen, wird es sich um eingezipptes Archiv handeln, das Sie in ein Verzeichnis Ihrer Wahl entpackenkönnen. Wenn Sie das Paket entpackt haben, können Sie Eclipse zum erstenMal starten, indem Sie den Ordner Eclipse öffnen und die ausführbareEclipse-Datei (z. B. eclipse.exe) ausführen.
Wenn Eclipse zum ersten Mal lädt, wird wahrscheinlich das DialogfeldWorkspace Launcher geöffnet (siehe Abbildung 2.8). In diesem Dialogfeldmüssen Sie ein Verzeichnis auf Ihrem lokalen Rechner auswählen, in dasEclipse Projektelemente u. Ä. speichern kann. Es ist sinnvoll, das Ankreuz-feld Use this as the default and do not ask again zu aktivieren, damitEclipse das ausgewählte Verzeichnis als Standardspeicherort verwendet. Sowerden Sie nicht bei jedem Start von Eclipse aufgefordert, einen Speicherortauszuwählen, und Sie wissen, an welcher Stelle Sie nach Entwicklungs-elementen suchen müssen, die Sie innerhalb der IDE erstellt haben.
Abbildung 2.8 Workspace-Standardspeicherort in Eclipse auswählen
Wenn alles gut geht, wird Eclipse schließlich in einem Fenster wie dem inAbbildung 2.9 geladen. Wenn Sie ein Eclipse-Einsteiger sind, empfehlen wirIhnen, ein oder zwei Tutorials durchzuarbeiten, um das IDE-Layout, Eclipse-spezifische Begriffe, Funktionen etc. näher kennenzulernen (z. B. das BuchEinstieg in Eclipse von Thomas Künneth, Rheinwerk Verlag 2014, oder ABAP-Entwicklung in Eclipse von Daniel Schön, SAP PRESS 2015). Meistens istEclipse relativ intuitiv, aber wie die meisten IDEs hat es ein paar Eigen-heiten.
3862.book Seite 58 Mittwoch, 1. Juli 2015 11:54 11
Entwicklungstools der SAP HANA Cloud Platform installieren 2.3
59
Abbildung 2.9 Erstes Starten von Eclipse
Bevor wir fortfahren, sollten wir eine kleine Housekeeping-Aufgabe erwäh-nen, die Sie berücksichtigen sollten, wenn Sie mit einem Proxy oder einerFirewall arbeiten. Da Eclipse seine Aktualisierungen über HTTP-Verbindun-gen erhält, müssen Sie Ihre Proxy-Einstellungen so konfigurieren, dassEclipse mit der SAP HCP verwendet werden kann. Führen Sie die folgendenSchritte durch, um eine Proxy-Server-Verbindung zu konfigurieren:
1. Wählen Sie in Eclipse die Option Window � Preferences in der oberstenMenüleiste aus, und gehen Sie zu General � Network Connections.
2. Wählen Sie aus dem in Abbildung 2.10 dargestellten Fenster Network
Connections das passende Schema (z. B. HTTP bzw. HTTPS) in der TabelleProxy, und klicken Sie auf die Schaltfläche Edit.
3. Geben Sie dann im Unterdialog Edit Proxy Entry den Proxy-Host-Namenund -Port sowie die Authentifikationsdaten an. Klicken Sie zum BestätigenIhrer Eingaben auf die Schaltfläche OK.
4. Abschließend können Sie mithilfe der Tabelle Proxy bypass eine Liste mitHosts konfigurieren, auf die Sie ohne Nutzung des Proxy-Servers zugreifenmöchten.
3862.book Seite 59 Mittwoch, 1. Juli 2015 11:54 11
Einrichtung und Inbetriebnahme2
60
Abbildung 2.10 Proxy-Server-Zugriff in Eclipse
SAP-Entwicklungstools installieren
Sie sollten nun eine einfache Eclipse-Version auf Ihrem lokalen Rechnerinstalliert haben. Auch wenn diese Eclipse-Instanz voll funktionsfähig ist,enthält sie keine SAP- oder HCP-spezifischen Funktionen. Um diese Funktio-nen hinzuzufügen, müssen Sie die benötigten Plug-ins von SAP herunterla-den und installieren. Führen Sie dazu die folgenden Schritte aus:
1. Zunächst müssen Sie sich auf der Installationsseite für die SAP Develop-ment Tools for Eclipse anmelden. Rufen Sie dazu die Seite https://tools.hana.ondemand.com/#cloud auf. Wie Sie in Abbildung 2.11 sehenkönnen, umfasst dieses Portal Installationsseiten für verschiedene aktuelleEclipse-Versionen (z. B. Eclipse Luna 4.4 und Eclipse Kepler 4.3). KopierenSie die URL für Ihre Eclipse-Version in die Zwischenablage.
2. Öffnen Sie als Nächstes die Eclipse IDE, und wählen Sie Help � Install
New Software aus der obersten Menüleiste.
3. Es erscheint das in Abbildung 2.12 dargestellte Fenster Install. Fügen Siein dieses Fenster die in Schritt 1 kopierte URL der Installationsseite in dasEingabefeld Work with ein, und klicken Sie auf die Schaltfläche Add.Geben Sie dem Repository im Dialogfeld Add Repository einen Namen,und klicken Sie auf OK. Indem Sie dem Repository einen Namen geben,
3862.book Seite 60 Mittwoch, 1. Juli 2015 11:54 11
Entwicklungstools der SAP HANA Cloud Platform installieren 2.3
61
können Sie das gleiche Repository später für Updates verwenden und sodie Software nach Bedarf aktualisieren.
Abbildung 2.11 Adresse der Installationsseite für die Entwicklungstools für die SAP HCP ermitteln
Abbildung 2.12 Eine Softwareseite in Eclipse hinzufügen
3862.book Seite 61 Mittwoch, 1. Juli 2015 11:54 11
Einrichtung und Inbetriebnahme2
62
4. Klicken Sie nach der Definition des Repositorys auf die Schaltfläche Next,um mit dem nächsten Schritt des Installationsassistenten fortzufahren. Andieser Stelle wird Eclipse eine Verbindung zur Installations-URL herstellenund nach verfügbaren Plug-ins zur Installation suchen.
5. Im Schritt Available Software (siehe Abbildung 2.13) erhalten Sie eineListe mit zur Installation verfügbaren Softwareelementen. Für unsere Zwe-cke liegt das Hauptaugenmerk auf den SAP HANA Cloud Platform
Tools, den SAP HANA Tools und dem UI Development Toolkit for
HTML5. Diese Auswahl stellt sicher, dass wir über die erforderlichenKomponenten verfügen, um HCP-basierte Java-Anwendungen, nativeHANA-Anwendungen und HTML5-Anwendungen basierend auf derSAPUI5-Technologie entwickeln zu können. Sie können selbstverständlichauch weitere Elemente nach Bedarf auswählen.
Abbildung 2.13 Softwareelemente für die Installation auswählen
6. Nachdem Sie die relevante Software zur Installation ausgewählt haben,können Sie mit dem Installationsassistenten fortfahren, indem Sie alleStandardvorgaben übernehmen. Daraufhin wird Eclipse die relevantenPlug-ins herunterladen und installieren.
3862.book Seite 62 Mittwoch, 1. Juli 2015 11:54 11
Entwicklungstools der SAP HANA Cloud Platform installieren 2.3
63
Wenn Sie viele Elemente ausgewählt haben bzw. die Netzwerkverbindunglangsam ist, kann der Installationsprozess eine Weile dauern. Wenn alles gutgeht, schließt Eclipse die Installation der Plug-ins ab und informiert Sie da-rüber, dass Sie einen Neustart durchführen müssen, damit die Änderungenübernommen werden können. Nach dem Neustart wird Ihnen eine neueWillkommensseite wie in Abbildung 2.14 angezeigt. Hier können Sie sehen,dass einige neue SAP- und HCP-bezogene Elemente zur Willkommensseitehinzugefügt wurden.
Abbildung 2.14 Neue Willkommensseite nach der Installation der Entwicklungstools
2.3.2 SAP HANA Cloud Platform SDK herunterladen
Zusätzlich zu den in Eclipse integrierten HCP-bezogenen Plug-ins bietet SAPein eigenständiges SDK an, das verschiedene nützliche Tools und Beispielefür den Einstieg in den Entwicklungsprozess umfasst. Dieses SDK beinhaltetu. a.:
� JAR-Dateien (Platform API Java Archive)
� eine Schnittstellendokumentation
3862.book Seite 63 Mittwoch, 1. Juli 2015 11:54 11
Einrichtung und Inbetriebnahme2
64
� eine lokale Laufzeitinstanz der SAP HCP, die für Offlinetests genutzt wer-den kann
� eine Konsole, mit der Instanzen der SAP HCP verwaltet werden können
� viele umfassende Beispielprojekte mit Anmerkungen in Quellcode undDokumentation
Sie können sich das SAP HCP SDK ebenfalls von der Seite https://tools.hana.ondemand.com/#cloud herunterladen. Wie Sie in Abbildung 2.15sehen können, stellt SAP separate SDKs zur Unterstützung der unterschiedli-chen, in der Java-Laufzeitumgebung verfügbaren Laufzeit-Container-Profilebereit. Wir empfehlen Ihnen, die SDK-Version auszuwählen, die zu Ihremausgewählten Profil passt. Für unsere Zwecke laden wir das SDK für das Pro-fil Java EE 6 Web herunter, da es das umfangreichste Set an Funktionen fürunsere Demonstrationszwecke enthält.
Abbildung 2.15 SAP HCP SDK herunterladen
Nachdem Sie die passende SDK-Version heruntergeladen haben, können Siedas ZIP-Archiv in einem leicht zugänglichen Verzeichnis auf Ihrem lokalenRechner entpacken. Nachdem die ZIP-Datei entpackt ist, empfehlen wirIhnen, sich mit der SDK-Ordnerstruktur vertraut zu machen und sich allevon SAP angebotenen Funktionen anzusehen.
Lange Dateinamen vermeiden
Aus verschiedenen Gründen empfehlen wir Ihnen, den SDK-Ordner nicht zu ver-schachtelt in der Struktur Ihres lokalen Dateisystems abzulegen. Bei außergewöhn-lich langen Dateinamen kann es sonst zu Problemen mit der lokalen Laufzeit kom-men.
3862.book Seite 64 Mittwoch, 1. Juli 2015 11:54 11
Entwicklungstools der SAP HANA Cloud Platform installieren 2.3
65
2.3.3 Lokale Laufzeitumgebung einrichten
Wie bereits erwähnt, enthält das SAP HCP SDK eine lokale Laufzeitumge-bung, mit der Sie HCP-Anwendungen auf Ihrem lokalen Rechner testen kön-nen. Auch wenn Sie diese lokale Laufzeitumgebung über die Kommando-zeile verwalten können, ist es viel praktischer, sie als verfügbareServerlaufzeit in Eclipse zu installieren. Führen Sie für diese Integration diefolgenden Schritte aus:
1. Starten Sie Eclipse, wählen Sie die Menüoption Window � Preferences
aus, und erweitern Sie das Untermenü Server.
2. Wählen Sie im Untermenü Server den Knoten SAP HANA Cloud Plat-
form aus. Es erscheint das Fenster SAP HANA Cloud Platform (sieheAbbildung 2.16). In diesem Fenster können Sie die relevanten Attributewie folgt konfigurieren:
� Landscape host
Hier müssen Sie den Host Ihrer HCP-Zielinstanz angeben. Falls Sie einkostenloses Entwicklerkonto nutzen, lautet der Landschaftshost hana-trial.ondemand.com. Anderenfalls lautet er hana.ondemand.com.
� SDK location
In dem Feld zum SDK-Speicherort geben Sie das Verzeichnis an, in dasSie das SAP HCP SDK entpackt haben.
� Account name
Mit diesem Attribut wird Ihr Kontoname für die SAP HCP übernom-men, damit die Entwicklungstools für die SAP HCP diesen Wert auto-matisch vorschlagen können, wenn Sie Schritte ausführen, die die Ein-gabe der Benutzerdaten erfordern.
� User name
Mit diesem Attribut wird Ihr Benutzername übernommen, damit dieEntwicklungstools für die SAP HCP diesen Wert automatisch vorschla-gen können, wenn Sie Schritte ausführen, bei denen Sie sich über dieHCP-Instanz serverseitig authentifizieren müssen.
3. Nachdem Sie den Speicherort für das SAP HCP SDK konfiguriert haben,müssen Sie zum Knoten Server � Runtime Environments wechseln. Hierkönnen Sie die lokale HCP-Laufzeitumgebung konfigurieren, indem Sieauf die Schaltfläche Add klicken. Anschließend wird der Assistent New
Server Runtime Environment geöffnet (siehe Abbildung 2.17).
3862.book Seite 65 Mittwoch, 1. Juli 2015 11:54 11
Einrichtung und Inbetriebnahme2
66
Abbildung 2.16 SDK-Speicherort zu den allgemeinen SAP-HCP-Einstellungen hinzufügen
Abbildung 2.17 Lokale HCP-Laufzeitumgebung einrichten
3862.book Seite 66 Mittwoch, 1. Juli 2015 11:54 11
Entwicklungstools der SAP HANA Cloud Platform installieren 2.3
67
4. Expandieren Sie auf der Startseite des Assistenten den Ordner SAP, undwählen Sie die Ihrem Java-Profil entsprechende lokale Laufzeitumgebungaus (siehe Abbildung 2.17). Klicken Sie auf die Schaltfläche Next, um fort-zufahren.
5. Im nächsten Fenster (siehe Abbildung 2.18) können Sie den Speicherortder lokalen Laufzeitumgebung auf Ihrem lokalen Rechner wählen. Da Sieden SDK-Speicherort bereits konfiguriert haben, wird Ihnen dieses Ver-zeichnis automatisch vorgeschlagen. Sie können diese Voreinstellung ein-fach bestätigen, indem Sie auf die Schaltfläche Finish klicken.
Abbildung 2.18 Speicherort der lokalen HCP-Laufzeitumgebung bestätigen
2.3.4 SAP Java Virtual Machine installieren
Das letzte von uns empfohlene Element, das Sie beim Einrichten Ihrer Ent-wicklungsumgebung installieren sollten, ist die SAP JVM. Wie Sie in Kapitel3, »Java-Anwendungen entwickeln«, und 4, »Verwaltung und Deploymentvon Java-Anwendungen«, lernen werden, ermöglicht Ihnen dieser optionaleSchritt, in einige der mächtigen Profiling-Funktionen der SAP JVM für dasTuning von Java-Anwendungen einzusteigen.
Die SAP JVM können Sie von der gleichen Seite herunterladen, über die Siedas SAP HCP SDK heruntergeladen haben: https://tools.hana.ondemand.com/#cloud. Im Bereich SAP JVM der Seite können Sie einfach das entsprechende
3862.book Seite 67 Mittwoch, 1. Juli 2015 11:54 11
Einrichtung und Inbetriebnahme2
68
Paket für Ihre Betriebssystemkonfiguration auswählen. Sie finden die Instal-lationsanweisungen für Ihr Betriebssystem in der Dokumentation zur SAPHANA Cloud unter https://help.hana.ondemand.com/help/frameset.htm. Navi-gieren Sie hier zu Java Development � Getting Started � Installing Java
Tools for Eclipse and SDK � Installing SAP JVM.
Nach der Installation der SAP JVM können Sie sie mit den installierten JREsin Eclipse verknüpfen, indem Sie folgende Schritte ausführen:
1. Öffnen Sie Eclipse, und wählen Sie im Menü Window � Preferences.
2. Expandieren Sie die Ordner Java � Installed JREs, und klicken Sie auf dieSchaltfläche Add.
3. Es öffnet sich der in Abbildung 2.19 dargestellte Installationsassistent Add
JRE. Übernehmen Sie die Standardoption Standard VM, und klicken Sieauf die Schaltfläche Next, um fortzufahren.
Abbildung 2.19 SAP JVM als installierte JRE in Eclipse hinzufügen
3862.book Seite 68 Mittwoch, 1. Juli 2015 11:54 11
Entwicklungstools der SAP HANA Cloud Platform installieren 2.3
69
4. Gehen Sie im nächsten Fenster zum Verzeichnis, in dem Sie die SAP JVMinstalliert haben (siehe Abbildung 2.20). Wenn Sie das Verzeichnis ausge-wählt haben, werden der JRE-Name und die Systembibliotheken automa-tisch konfiguriert.
5. Klicken Sie auf die Schaltfläche Finish, um die Konfiguration zu bestäti-gen.
Abbildung 2.20 Verzeichnis der SAP JVM auswählen
6. Nachdem die SAP JVM als JRE konfiguriert wurde, wählen Sie diese alsStandard-JRE aus, indem Sie das Häkchen im Ankreuzfeld neben derSpalte Name setzen (siehe Abbildung 2.21). Mit diesen Einstellungen wer-den alle neuen Java-basierten Projekte automatisch so konfiguriert, dasssie die SAP JVM als Ziel-JRE nutzen.
3862.book Seite 69 Mittwoch, 1. Juli 2015 11:54 11
Einrichtung und Inbetriebnahme2
70
Abbildung 2.21 SAP JVM als Standard-JRE auswählen
2.4 Zusammenfassung
In diesem Kapitel haben Sie die Voraussetzungen für die Entwicklungcloud-basierter Anwendungen auf der SAP HCP kennengelernt. Nachdemdie hier beschriebenen administrativen Aufgaben erledigt sind, können wirmit den praktischen Entwicklungsaufgaben fortfahren. Damit fangen wir inKapitel 3, »Java-Anwendungen entwickeln«, an, in dem Sie lernen werden,wie Sie Java-basierte Webanwendungen entwickeln.
3862.book Seite 70 Mittwoch, 1. Juli 2015 11:54 11
1 Einführung in die SAP HANA Cloud Platform ..................... 27
1.1 Einführung in die SAP HANA Cloud Platform ......................... 271.2 Die Cloud-Computing-Revolution .......................................... 29
1.2.1 Was ist Cloud Computing? ....................................... 291.2.2 Die Cloud-Computing-Servicemodelle verstehen ...... 301.2.3 Historischer Hintergrund .......................................... 35
1.3 Eine strategisches Bindeglied für SAP ..................................... 371.3.1 Herausforderungen der hybriden Landschaft ............ 371.3.2 Die Rolle der SAP HANA Cloud Platform ................. 38
2 Einrichtung und Inbetriebnahme ........................................ 41
2.1 Benutzerzugriff für die SAP HANA Cloud Platform einrichten .............................................................................. 412.1.1 Benutzerkonzept der SAP HANA Cloud Platform ...... 422.1.2 Für einen kostenlosen Entwicklerzugriff
registrieren .............................................................. 442.2 Inhalt des Angebots ............................................................... 47
2.2.1 Laufzeit-Container ................................................... 472.2.2 Services der SAP HANA Cloud Platform ................... 532.2.3 Weiterführende Services .......................................... 54
2.3 Entwicklungstools der SAP HANA Cloud Platform installieren ............................................................................. 562.3.1 Eclipse IDE einrichten .............................................. 562.3.2 SAP HANA Cloud Platform SDK herunterladen ........ 632.3.3 Lokale Laufzeitumgebung einrichten ........................ 652.3.4 SAP Java Virtual Machine installieren ....................... 67
3.2.1 Dynamic Web Project in Eclipse anlegen .................. 753.2.2 Servlet-basierten Controller aufbauen ...................... 803.2.3 Präsentationsebene mithilfe von JSPs
implementieren ....................................................... 833.2.4 Anwendung lokal testen .......................................... 86
3.3 Mit EJBs arbeiten ................................................................... 893.3.1 Refactoring für EJBs ................................................. 893.3.2 Geschäftslogik in einer EJB implementieren .............. 923.3.3 EJBs in Servlets und JSPs einfügen ............................ 94
3.4 Debugging und Tuning der Java-Anwendungen ..................... 983.4.1 Debugging einer Java-Webanwendung .................... 983.4.2 Laufzeitanalyse (Profiling) von Java-
4 Verwaltung und Deployment von Java-Anwendungen ...... 109
4.1 Entwicklungszyklus im Überblick ........................................... 1094.2 Deployment von Java-Anwendungen ..................................... 112
4.2.1 Deployment mithilfe der Eclipse IDE ........................ 1124.2.2 Deployment mithilfe des Console Clients ................. 1234.2.3 Deployment-Monitoring .......................................... 1294.2.4 Logging- und Tracing-Konzepte ............................... 133
4.3 Quellcode-Management ........................................................ 1394.3.1 Einführung in Git und GitHub .................................. 1394.3.2 Erste Schritte mit EGit .............................................. 1404.3.3 Ein Git Repositorymit GitHub definieren .................. 1434.3.4 Git Repository in Eclipse klonen ............................... 1454.3.5 Projekte zur Quellcode-Verwaltung hinzufügen ........ 1484.3.6 Änderungen einchecken ........................................... 1504.3.7 Ausblick ................................................................... 153
4.4 Build-Automatisierung mit Apache Maven und Ant ............... 1544.4.1 Erste Schritte mit Apache Maven ............................. 1544.4.2 Mit Apache Ant arbeiten .......................................... 164
4.5 Continuous Integration mit Jenkins ........................................ 1664.5.1 Einführung in Jenkins ............................................... 167
3862.book Seite 8 Mittwoch, 1. Juli 2015 11:54 11
Inhalt
9
4.5.2 Jenkins auf der SAP HANA Cloud Platform installieren ............................................................... 167
4.5.3 Schritt für Schritt zur Continuous Integration ........... 1684.6 Zusammenfassung ................................................................. 170
5 Entwicklung nativer Anwendungen für SAP HANA ............ 171
5.1 Überblick ............................................................................... 1725.2 Erste Schritte ......................................................................... 174
5.2.1 HANA-Instanz in der Testumgebung erstellen .......... 1755.2.2 Mit Eclipse und den Entwicklungstools für
SAP HANA arbeiten ................................................. 1765.2.3 Mit der SAP HANA Web-Based Development
Workbench arbeiten ................................................ 1835.3 XS-Projekt in Eclipse anlegen ................................................. 1855.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 ........ 1935.4.3 Datenmodell über serverseitiges JavaScript
5.6.1 Deskriptor-Datei für die Anwendung erstellen ......... 1995.6.2 Datei zum Zugriff auf die Anwendung definieren ...... 2015.6.3 Rolle für den anzeigenden Zugriff definieren ............ 203
5.7 Deployment und Testen ........................................................ 2065.7.1 XS-Projekt aktivieren ............................................... 2065.7.2 Anzeigerolle zu einem Benutzer-Account
6.2.1 Konzeptüberblick ..................................................... 2206.2.2 Datenbankschemata verwalten ................................ 2216.2.3 Mit der Java Persistence API arbeiten ....................... 2286.2.4 Mit Java Database Connectivity arbeiten .................. 2456.2.5 Konzepte zur Datenbankadministration ................... 251
7.1 Überblick ............................................................................... 2947.2 Erste Schritte ......................................................................... 295
7.2.1 HTML5-Anwendung anlegen ................................... 2957.2.2 Auf das Git Repository zugreifen .............................. 2977.2.3 Mit der SAP Web IDE arbeiten ................................. 2987.2.4 HTML5-Anwendungsinhalte im SAP HCP Cockpit
8.3 Deklarative Sicherheitsimplementierung mit Java ................... 3338.3.1 Authentifizierungsmethode konfigurieren ................ 3338.3.2 Berechtigungsrollen und -einschränkungen
definieren ................................................................ 3368.3.3 Rollenzuweisung im SAP HCP Cockpit ...................... 338
3862.book Seite 10 Mittwoch, 1. Juli 2015 11:54 11
Inhalt
11
8.4 Programmatische Sicherheit in Java implementieren .............. 3418.4.1 Berechtigungen programmatisch prüfen ................... 3418.4.2 Mit der Benutzerverwaltungsschnittstelle
arbeiten ................................................................... 3438.4.3 Mit der Authentifizierungsschnittstelle arbeiten ....... 3458.4.4 Mit der Kennwortspeicherungsschnittstelle
arbeiten ................................................................... 3478.4.5 Schutz vor XSS-Angriffen .......................................... 349
8.5 Authentifizierung und Berechtigungen mit SAML 2.0 ............ 3538.5.1 SAML im Überblick .................................................. 3548.5.2 Vertrauenswürdigen Identity Provider
9 Mit dem SAP HANA Cloud Portal arbeiten ......................... 385
9.1 Einführung ............................................................................. 3859.1.1 Was ist das SAP HANA Cloud Portal? ....................... 3869.1.2 Architekturüberblick ................................................ 3889.1.3 Wie wird das SAP HANA Cloud Portal verwendet? ... 391
9.2 Content-Modell des SAP HANA Cloud Portals ....................... 3929.3 Inhalte für das SAP HANA Cloud Portal entwickeln ............... 393
9.3.1 OpenSocial-Widgets erstellen .................................. 3939.3.2 Funktionen des SAP HANA Cloud Portals
verwenden ............................................................... 4009.3.3 Vorhandene Webanwendungen anpassen ................ 4069.3.4 Widgets zum Content Catalog des Portals
hinzufügen ............................................................... 4079.4 Fallbeispiel: eine benutzerdefinierte Portalseite erstellen ....... 409
9.4.1 Website im Site Directory erstellen .......................... 4109.4.2 Seitenhierarchie der Website einrichten ................... 4219.4.3 Inhalt zu den Seiten hinzufügen ............................... 4259.4.4 Website veröffentlichen und testen .......................... 431
3862.book Seite 11 Mittwoch, 1. Juli 2015 11:54 11
10 Einführung in SAP HANA Cloud Integration ....................... 435
10.1 Überblick ............................................................................... 43510.2 Anwendungsfälle ................................................................... 43810.3 Erste Schritte in der Eclipse IDE ............................................. 440
10.3.1 Plug-ins für SAP HANA Cloud Integration installieren ............................................................... 440
10.4.1 Integrationsfluss anlegen .......................................... 44410.4.2 Sender- und Empfängersysteme konfigurieren .......... 44710.4.3 WSDL-Dateien aus SAP PI bzw. dem lokalen
Dateisystem importieren .......................................... 44710.4.4 Parameterdatei anlegen ........................................... 44810.4.5 Mapping zwischen Sender- und
Empfängersystemen ................................................. 44910.4.6 Kommunikationskanäle für Sender und Empfänger
10.5 Einführung in die Weboberfläche für SAP HANA Cloud Integration ................................................ 45210.5.1 Bereich »Discover« (Integration Content Catalog) ..... 45310.5.2 Bereich »Design« ...................................................... 45610.5.3 Bereich »Run« .......................................................... 46010.5.4 Bereich »Monitor« ................................................... 460
11.4 SuccessFactors mit HCP-Anwendungen erweitern .................. 48711.4.1 Verwaltungsschichten von SuccessFactors ................ 48711.4.2 Account-Onboarding ............................................... 48911.4.3 Deployment Ihrer ersten SuccessFactors-
12 SAP HANA Cloud Platform Mobile Services ....................... 515
12.1 Überblick ............................................................................... 51712.2 Anwendungsentwicklung mit Cordova und der
SAP Web IDE ........................................................................ 52012.2.1 Architektur einer Cordova-Anwendung .................... 52012.2.2 SAPs Tool-Kette für die hybride Cordova-
Entwicklung ............................................................. 52112.3 Softwarevoraussetzungen ...................................................... 522
12.3.1 SAP Mobile Platform SDK ........................................ 52312.3.2 Geräte-SDKs ............................................................ 52412.3.3 Testinstanz der SAP HANA Cloud Platform
Mobile Services ....................................................... 52412.3.4 SAP Web IDE Hybrid App Toolkit ............................ 525
12.4 Am häufigsten verwendete Komponenten ............................. 52512.4.1 Anmeldung: Gerätregistrierung und
12.5 Einfache hybride Anwendung mithilfe der SAP HCPms und der SAP Web IDE erstellen ............................................. 52912.5.1 Deployment eines OData-Test-Webservices ............. 53012.5.2 HCP-Destination für den ESPM-OData-Service
erstellen ................................................................... 53312.5.3 SAP Web IDE für die HCPms-Entwicklung
konfigurieren ........................................................... 53412.5.4 Neues Kapsel-Projekt erstellen ................................. 53512.5.5 HCPms-Anwendung über die
HCPms-Administrationskonsole erstellen ................. 54012.5.6 Review des vom Assistenten erzeugten Codes .......... 54312.5.7 Testen der Anwendung ............................................ 547
12.6 Echte Mobile-Funktionen hinzufügen .................................... 55312.6.1 Betrieb ohne Netzanbindung: das Offline-Plug-in ..... 55312.6.2 Push-Benachrichtigungen ......................................... 556
Berechtigung 319, 328, 332Anwendungsberechtigung 204Berechtigungsprüfung in JSP 342Berechtigungsprüfung in Servlet 342Endpunkt 376Rolle 204SAP HANA 203
SAP HANA Cloud Platform Mobile Services 515Admin Cockpit 518Reporting 518
SAP HANA Cloud Platform Mobile Ser-vices 55
SAP HANA Cloud Platform Mobile Services Admin Cockpit 540, 559
SAP HANA Cloud Platform SDK 75, 76, 115Java EE 6 Web 64lokale Laufzeit 65
SAP HANA Cloud Portal 55, 385, 469, 470, 491Architektur 390Busy Indicator API 402Content-Modell 392Context Object API 401Custom Rich Text Editor API 402Entwicklung 393Funktionen 387GadgetPrefs API 401, 421Login/Logout API 401Open Popup API 401OpenSocial-Funktionen 400OpenSocial-Widgets 392Seite 392Site Context (Pub-Sub) API 401Site Hierarchy API 401Site Properties API 402Vergleich zu SAP Enterprise Portal 387
SAP HANA Cloud Portal (Forts.)Verwendung 391Vorlagentypen 396Website-Definition 392Widget Dynamic Height API 401Widget erstellen 425Widget Menu API 401
SAP HANA DB Services 33SAP HANA Enterprise Cloud 33SAP HANA Extended Application
Services � SAP HANA XSSAP HANA Infrastructure Services 33SAP HANA Marketplace 43SAP HANA Repository 179, 190, 206,
208Arbeitsbereich 181Paket 179
SAP HANA Studio 177SAP HANA Web IDE 176, 183SAP HANA Web-Based Development
Workbench 176, 183SAP HANA XS 51, 173, 175, 184, 185,
202, 217Persistenz 220Projekt 197
SAP HCI � SAP HANA Cloud IntegrationSAP HCP � SAP HANA Cloud PlatformSAP ID Service 213, 334, 340, 356SAP Jam 391, 483SAP Java Connector 269, 275SAP Java Virtual Machine � SAP JVMSAP JVM 49, 67, 102
herunterladen 67installieren 67Profiler 102, 103
SAP MaxDB 221, 222, 258SAP Mobile Platform 522SAP Mobile Platform SDK 522, 523,
526, 527SAP NetWeaver Cloud � SAP HANA
Cloud PlatformSAP PartnerEdge 44SAP Process Integration (PI) 55SAP Process Orchestration 509SAP S/4HANA 33SAP Store 525SAP Web IDE 293, 298, 309, 394, 470,
3862.book Seite 576 Mittwoch, 1. Juli 2015 11:54 11
Wir hoffen sehr, dass Ihnen diese Leseprobe gefallen hat. Sie dürfen sie gerne empfehlen und weitergeben, allerdings nur vollständig mit allen Seiten. Bitte beachten Sie, dass der Funktionsumfang dieser Leseprobe sowie ihre Darstel- lung von der E-Book-Fassung des vorgestellten Buches abweichen können. Diese Leseprobe ist in all ihren Teilen urheberrechtlich geschützt. Alle Nutz- ungs- und Verwertungsrechte liegen beim Autor und beim Verlag.
Teilen Sie Ihre Leseerfahrung mit uns!
James Wood
SAP HANA Cloud Platform – Das Handbuch für Entwickler576 Seiten, gebunden, Juli 2015 69,90 Euro, ISBN 978-3-8362-3862-5
www.sap-press.de/3912
James Wood ist Gründer und Principal Consultant von Bowdark Consulting, Inc., einem Beratungsunternehmen, das sich auf Technologie und kundenspezifische Entwick-lung rund um die SAP-Lösungen spezialisiert hat. Bevor er Bowdark Consulting im Jahr 2006 gründete, war er als SAP-NetWeaver-Consultant für SAP America, Inc. und die IBM Corporation beschäftigt und an zahlreichen großen
SAP-Implementierungen beteiligt. Er ist SAP-Mentor und Autor zahlreicher erfolgreicher Bücher zu SAP-Themen. Weitere Informationen zu James Wood und diesem Buch finden Sie auf seiner Website: www.bowdark.com.