ebook img

Java aktuell PDF

68 Pages·2017·11.55 MB·German
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Java aktuell

Java 02-2017 | Sommer | www. ijug.eu D a t e a v e aktuell S the l Praxis. Wissen. Networking. Das Magazin für Entwickler l e Aus der Community — für die Community u t k a 21. - 24. November in Nürnberg a v a J 7 7 9 6 1- 9 1 2 N S S I R U E 0 8 5, x: u el n e B F H C 0 8 9, H: C R U E 0 6 5, A: R U E 0 9 4, D: Java im Mittelpunkt 2 0 3 0 Big Data Microservices Achtung, Audit 9 4 30 Predictive Analytics Lagom, das neue Nutzung und Vertei- iJUG 8 7 mit Apache Spark Framework lung von Java SE 9 91 Verbund 1 4 a v aLa J n ddd 2018 im Phantasialand | Brühl bei Köln Save the Date JavaLand 2018 20.-22. März iiiiiiiii www.ijug.eu iii Java steht im Mittelpunkt Als vom Frühjahr 1991 bis Sommer 1992 unter der Federführung von James Gosling rund zehn Ent- wickler die Urversion von Java fertiggestellt hatten, konnte sich keiner der Protagonisten vorstellen, dass daraus einmal eine der wichtigsten Programmiersprachen entstehen würde. Heute nutzen welt- weit mehr als neun Millionen Entwickler Java. Es ist jedoch nicht nur die Sprache Java, die sich so weit verbreitet hat; drumherum ist ein riesiges Biotop an Frameworks, Bibliotheken, APIs etc. entstanden. Diese Ausgabe bietet einen guten Querschnitt durch die Java-Landschaft, beispielsweise mit dem Galen-Framework, das Layout-Testen leicht macht und dabei das moderne, responsive Webdesign berücksichtigt, oder mit Thymeleaf, einer neuen Template-Engine für Entwickler und Designer. Vom aktuellen Big-Data-Geschehen handelt der Artikel „Predictive Analytics mit Apache Spark“. Es geht um Verfahren für die Extraktion von Informationen aus Daten mit dem Ziel, aus den gewonnenen Informationen Trends oder Verhaltensmuster abzuleiten. Dazu passend haben zwei Autoren ihre Er- Wolfgang Taschner fahrungen beim Aufsetzen eines Big-Data-Projekts beschrieben. Ein weiterer Artikel stellt mit Redis Chefredakteur Java aktuell eine vielseitige und leichtgewichtige NoSQL-Datenbank vor. Microservices sind ebenfalls in aller Munde. Mit Lagom betritt ein weiterer Player die Arena, in der sich schon Frameworks wie Spring Boot, Dropwizard und andere tummeln. Der Name „Lagom“ stammt aus dem Schwedischen und meint „gerade richtig“ oder „nicht zu viel, nicht zu wenig“. Apache Kafka 101 hingegen ist ein Message Broker, dessen Architektur die Verarbeitung von Datenströmen mit sehr hohem Nachrichten-Durchsatz bei niedrigen Latenzen ermöglicht. Auch Best Practices kommen in dieser Ausgabe nicht zu kurz. Ein Entwickler packt seine IntelliJ- IDEA-Trickkiste aus und ein anderer zeigt das JSON Schema-Driven Development mit JSSD. Ein erfah- rener API-Designer berichtet, auf welche Entwurfsziele man bei Application Programming Interfaces achten sollte. Java ist zwar Open Source, doch man darf es nicht immer frei benutzen und verteilen. Wenn ein Oracle-Auditor ins Haus kommt, sollten die Fallstricke bekannt sein. Markus Karg von der Java User Group Goldstadt hat sie zusammengestellt. Überhaupt, was wäre Java ohne Community? Wie in jeder Ausgabe gibt es auch ein Interview mit einer Java User Group, diesmal mit der EuregJUG Maas-Rhine. Ich wünsche Ihnen viel Spaß beim Lesen, Ihr Java aktuell 2-2017 | 3 Inhalt 8 36 Oracle behält sich das Recht vor, Kunden zu Mit Predictive Analytics lassen sich aus gewonnenen Informationen Trends oder Verhaltensmuster überprüfen ableiten 3 Editorial 26 Thymeleaf – eine Template-Engine für 46 Apache Kafka 101 Entwickler und Designer Florian Troßbach Gerrit Meier 5 Das Java-Tagebuch Andreas Badelt 51 Hallo, ich bin Redis 31 Big-Data-Piloten – ready for Take Off Mark Paluch Dominique Rondé und Alexandra Klimova 8 Achtung, Audit! Markus Karg 57 JSON Schema-Driven Development in 36 Predictive Analytics mit Apache Spark Java mit JSSD Dr. Ralph Guderlei Andreas W. Bartels 11 Swift − the next big thing? Krystof Beuermann 39 Lagom: Einmal Microservices mit 61 Application Programming Interfaces – allem, bitte! auf welche Entwurfsziele man achten 16 Herausforderung „Multi Channel Lutz Hühnken sollte Architecture" Kai Spichale Lars Röwekamp 42 IntelliJ-IDEA-Trickkiste – ein Entwickler packt aus 64 Interview mit Michael Simons 21 Galen-tastisch: Layout-Testen leicht- Yann Cébron gemacht mit dem Galen-Framework Jonas Knopf 66 Impressum / Inserentenverzeichnis 39 Microservices sind in aller Munde und an entsprechenden Frameworks herrscht kein Mangel 4 | iiiiiiiii www.ijug.eu iii Das Java-Tagebuch Andreas Badelt, stellvertretender Leiter der DOAG SIG Java Das Java-Tagebuch gibt einen Überblick über die wichtigsten Geschehnisse rund um Java – in komprimierter Form und chronologisch geordnet. Der vorliegende Teil widmet sich den Ereignissen im vierten Quartal 2016. 27. September 2016 daher erst denkbar, wenn ARM sich quasi der Leidensdruck wirklich so groß oder als „general purpose”-Plattform weiterver- ist das ein gutes Zeichen hinsichtlich der Interview mit Adam Bien: breite. Scheinbar ist dieser Moment jetzt anderen Arbeiten am JDK 9? Neues gibt „Es ist noch nichts gestoppt“ gekommen. Ein bisschen kompliziert wird es auch von VisualVM. Das Java-Trouble- Die Java-EE-Koryphäe Adam Bien hat sich es aber schon, weil sich mit den AArch64- shooting-Tool hat in der Version 1.3.9 jetzt in einem Interview zu den aktuellen Ent- und AArch32-Projekten in den vergange- experimentellen Support für das JDK 9. In wicklungen rund um den Standard und zu nen Jahren zwei Open-Source-Implemen- Zukunft wird es jedoch nicht mehr mit dem seinen Eindrücken von der JavaOne geäu- tierungen für Linux auf ARM entwickelt Oracle JDK ausgeliefert, sondern muss von ßert: „Es ist noch nichts gestoppt”, sagt er haben. Sie sind für das OpenJDK 8 entstan- der projekteigenen Website bezogen wer- mit Blick auf den von Oracle angekündigten den (für das die Oracle-Freigabe nicht gilt), den. Diese ist mit dem geplanten Abschal- Rauswurf von MVC, JMS 2.1 und Manage- aber zumindest der AArch64-Port ist auch ten von java.net inzwischen auf GitHub ment API 2.0 aus EE 8. Über die Commu- für OpenJDK 9 so gut wie fertig. Ein Merge migriert. nity-Umfrage könne man noch viel errei- dürfte das Entwicklerteam zumindest he- https://visualvm.github.io/ chen. Darüber hinaus empfindet er „das rausfordern. Die grundsätzliche Begeiste- Fehlen von „Concurrency Utilities“ auf den rung bei den OpenJDK -Entwicklern ist da- JavaOne-Slides als durchaus kritischer”. Die her, mit Verweis auf den Zeitpunkt, etwas 11. Oktober 2016 geplante Aufnahme von Health Checking gedämpft. und Configuration in EE 8 begrüßt Bien. http://mail.openjdk.java.net/pipermail/aarch32- NetBeans-Team jetzt auf Slack Interessant ist seine Aussage zum Verhal- port-dev/2016-August/000406.html Für alle Slack-Nutzer oder diejenigen, die ten des Herstellers: „Oracle verhält sich ein noch keinen Grund kennen, es auszuprobie- wenig wie Apple – es gibt sehr lange kein ren: Das NetBeans-Team ist jetzt auf Slack Feedback, die Mitarbeiter hören aber genau 4. Oktober 2016 erreichbar. zu.” Daher der Rat, neben der Teilnahme an https://netbeans.signup.team/ der Umfrage auch verstärkt zu bloggen, NetBeans 8.2 und Artikel zu schreiben oder die Java EE NetBeans 8.2 ist da – für reine Java-Ent- Guardians zu unterstützen. wickler ist diesmal nicht viel dabei, vielleicht 13. Oktober 2016 http://www.ijug.eu/home- ijug/aktuelle-news/ mit Ausnahme der verbesserten Docker-Un- article/interview-mit-adam-bien-es-ist-noch- terstützung. Die größten Neuerungen gibt JCP-EC-Kandidaten stellen sich vor – die Zweite nichts-gestoppt.html es bei JavaScript (Support von ECMAScript Nach der öffentlichen Sitzung auf der Java- 6 und experimentell 7) sowie JavaScript- One gibt es heute eine (ebenfalls öffentli- Frameworks (Node.js, Oracle JET). che) Telefonkonferenz mit den Kandidaten 29. September 2016 https://netbeans.org/community/releases/82/ für die Wahl zum JCP Executive Committee vom 1. bis 14. November. Es sind leider ARM-Quellcode für OpenJDK 9 freigegeben nicht alle Kandidaten vertreten, trotzdem Oracle gibt den Quellcode der JDK-9-Im- 8. Oktober 2016 ist es eine ziemlich große Runde – zum plementierungen (32 und 64 Bit) für ARM- Glück auch viele, die selbst nicht kandi- Architekturen frei, auf denen unter an- Ein paar Neuigkeiten vom JDK 9 dieren. Es ist nicht ganz einfach, den iJUG derem der Raspberry Pi basiert. Vor gut Eine eher unscheinbare Sache, aber trotz- in der knapp bemessenen Redezeit vor- zwei Jahren hatte Henrik Ståhl von Oracle dem eine Herausforderung: Mit JEP 299 zustellen (angeblich zwei Minuten, aber in seinem Blog noch gesagt, dass man („Java Enhancement Proposal”) sollen die gefühlt waren es nur Sekunden). Parallel neben Support-Einnahmen für Java auf 22 (Linux) beziehungsweise 25 (Solaris) arbeiten wir mit Hochdruck an einem offi- „general purpose”-Plattformen insbeson- verschiedenen Sätze von Dokumenten des ziellen Wahlprogramm. Das soll allerdings dere Lizenz-Einnahmen für Java-Embed- OpenJDK vereinheitlicht werden, also alle nur wenige zentrale Aussagen umfassen, ded-Ports nutze, um die Java-Entwicklung API-Dokus unter „docs/api/“ und die Ma- sonst liest es eh niemand. zu finanzieren. Eine Freigabe des Codes sei nual Pages unter „src//{share,}/man“. War https://jcp.org/en/whatsnew/elections Java aktuell 2-2017 | 5 Tagebuch 19. Oktober 2016 28. November 2016 und 302 sollen für besser lesbaren und kla- reren Code in Bezug auf Generics und Lamb- Verschiebung von Java 9 ist bestätigt Auswertung der Java EE 8-Umfrage: erste das sorgen. Sie stehen aber bislang nur zur Die bereits im Vorfeld der JavaOne angekün- Ergebnisse Diskussion und sind entsprechend auch nicht digte Verschiebung von Java 9 ist jetzt von Die Ergebnisse des „Java EE 8 Community auf ein Release festgelegt. JEP 300 soll mit Mark Reinhold bestätigt worden. Nach dem Survey” lassen quälend lange auf sich warten. der expliziten Deklaration von kovarianten neuen Zeitplan ist der „Final Release Candi- Schuld daran ist wohl nicht nur, dass es Frei- beziehungsweise kontravarianten Parame- date” (letzter Schritt vor der „General Availa- text-Felder gab und die Teilnehmer ordentlich ter-Typen dem Compiler ermöglichen, bei der bility”) für den 6. Juli 2017 geplant. Gebrauch davon gemacht haben (zumindest Nutzung automatisch Wildcards („? super X” http://mail.openjdk.java.net/pipermail/jdk9- nach allem, was ich von iJUG-Mitstreitern oder „? extends X”) einzusetzen. JEP 301 will dev/2016-September/004887.html weiß), sondern auch, dass mit David Dela- Konstanten innerhalb von Enumerations ei- bassee anscheinend nur ein einziger Oracle- nen (jeweils) eigenen Typ ermöglichen. JEP Mitarbeiter an der Auswertung sitzt. Jetzt gibt 302 soll Mehrdeutigkeiten bei Lambda-Auf- 30. Oktober 2016 es zumindest mal ein paar Informationshäpp- rufen verhindern, indem nicht genutzte Para- chen in einem Blog-Eintrag von David, der sich meter durch Unterstriche ersetzt werden. Sie Das Wahlprogramm des iJUG auf die Umfrage bezieht: Die JSRs zu Manage- im Detail zu erläutern, würde den Rahmen Gerade rechtzeitig vor der Wahl hat sich ment API 2.0 und JMS 2.1 sollen zurückge- sprengen, aber es gibt eine gute Zusammen- der iJUG auf die Kernpunkte verständigt, zogen, also eingestellt werden. Soweit nichts fassung auf heise.de und die Details sind na- die er im Executive Committee vorantreiben Neues zum Stand der JavaOne-Keynote. Für türlich auf der openjdk-Seite verfügbar. möchte; sie sind nun auf den Wahlseiten MVC sucht Oracle nun nach einem anderen http://openjdk.java.net/jeps/ für alle sichtbar. Die drei großen Bereiche Community-Mitglied, das diesen außerhalb sind: „Offenheit und Transparenz” – unter von Java EE 8 vorantreiben könnte (im Origi- anderem verbesserter Repository-Zugang, nal: „as a stand-alone component”). Das wäre 19. Dezember 2016 insbesondere für Expert-Group-Mitglieder tatsächlich ein guter Schachzug, nicht nur für (was eigentlich ja selbstverständlich sein Oracle. Wobei ich mich in meiner Naivität fra- MicroProfile-Projekt bei Eclipse angenommen sollte) und die Veröffentlichung von TCKs. ge, warum die Spezifikation dann nicht doch Die Eclipse Foundation hat bekannt gege- Die „Trennung von Standards und kommer- in Java EE 8 aufgenommen werden könnte – ben, dass der Vorstand das Projekt „Micro- ziellen Interessen” – hier geht es nicht nur wenn der Zeitplan funktioniert. Aber vielleicht Profile“ einstimmig angenommen hat. Dis- um rechtliche und Prozess-Verbesserun- gibt es dazu ja auch demnächst mehr Details. kussionen gibt es wohl noch bezüglich der gen, sondern auch darum, mehr Spec Leads https://blogs.oracle.com/theaquariumentry/ Lizenzen: Momentan läuft MicroProfile unter zu haben, die den Interessen der Communi- a_quick_update_on_java der Apache License 2.0, was für die Eclipse ty verpflichtet sind. Und „Mehr Demokratie”, Foundation sehr ungewöhnlich wäre. Mike insbesondere eine Stärkung der Rechte der Milinkovich, Chef der Eclipse Foundation, hat Expert Groups und des Executive Commit- 5. Dezember 2016 daher eine duale Lizenz mit der Eclipse Public tee gegenüber Spec Leads, die ihre Rolle License vorgeschlagen; dies trifft jedoch auch nicht (mehr) ausreichend wahrnehmen. „Inkubator”-Packages für das JDK nicht auf uneingeschränkte Zustimmung. http://www.ijug.eu/home-ijug/aktuelle-news/ Um die Aufnahme neuer Features zu erleich- Trotzdem ist das Thema laut Milinkovich kein article/ijug-bewirbt-sich-fuer-sitz-im-executi- tern, schlagen OpenJDK-Entwickler mit dem „Showstopper”, weil die Apache License be- ve-committee-des-jcp.html neuen JEP 11 vor, einen „Inkubator”-Prozess reits akzeptiert wurde – notfalls auch allein. zu nutzen. Dieser soll es ermöglichen, in ei- https://projects.eclipse.org/proposals/eclipse- nem gewissen Maß auch unfertige Features microprofile 15. November 2016 aufzunehmen, um zunächst Erfahrungen zu sammeln, und ihre Standardisierung oder JCP-Executive-Committee-Wahlen beendet Finalisierung auf ein Folge-Release zu ver- 21. Dezember 2016 Es hat nicht ganz gereicht. Der iJUG ist bei schieben. Diese Features sollen im spezi- den EC-Wahlen am „Cut” gescheitert, hat ellen Package „jdk.incubator“ liegen, bis sie Java EE 8: Die Umfrage-Ergebnisse aber immerhin aus dem Stand 8 Prozent der den Inkubator-Status verlassen und ein ei- Endlich: Oracle hat die Auswertung der Stimmen geholt. Ich gratuliere den sechs genes Package bekommen oder wieder aus Community-Umfrage zu EE 8 veröffentlicht. gewählten Kandidaten: der Eclipse Founda- dem OpenJDK entfernt werden. Passend zur Oracle-Strategie belegen die tion und der London Java Community (je 14 http://openjdk.java.net/jeps/11 JSRs Management API, JMS und MVC bei der Prozent), Azul, Twitter, Tomitribe (neu im EC Frage nach der Wichtigkeit von Features drei mit 10 Prozent) und Hazelcast (9 Prozent). der vier letzten von 21 Plätzen – direkt hinter Der iJUG wird seine zentralen Forderungen 9. Dezember 2016 „Multi-Tenancy“. „Configuration“ und „Service auch außerhalb des Executive Commitee Health“ finden sich in der vorderen Hälfte. verfolgen beziehungsweise in Zusammen- OpenJDK: Vorschläge für Generics, Lambdas Die grafische Darstellung ist allerdings etwas arbeit mit den gewählten Organisationen. und Enumerations suggestiv, wie sofort im iJUG bemängelt wird. https://jcp.org/aboutJava/communityprocess/ Noch ein paar weitere JEPs: Die Verbesse- Das Feature „MVC” ist, verglichen mit den elections/2016.html rungsvorschläge mit den Nummern 300, 301 ersten 16 Plätzen (von „REST Services“ ganz 6 | iiiiiiiii www.ijug.eu iii vorne bis „State Management“), den Befrag- Gruppe von Java-Experten, haben zur lau- services centric products from Java EE ven- ten nicht absolut unwichtig, sondern einfach fenden Lizenz-Diskussion ihre Sicht in einem dors available essentially before Java EE 8 is nur etwas weniger wichtig. Oracle sieht die Google-Dokument zusammengefasst. Es released. We can hope that the MicroProfile Umfrage aber als Bestätigung der bereits enthält im Wesentlichen die Dinge, die auch efforts will converge with Java EE 9 sooner eingeleiteten Roadmap-Änderung. im iJUG schon diskutiert wurden. Der iJUG hat rather than later.” Das wäre schön. https://blogs.oracle.com/theaquarium/entry/ das Dokument ins Deutsche übersetzt. http://blog.rahmannet.net/ java_ee_8_community_survey2 http://bit.ly/2jpXiGO 27. Januar 2017 21. Dezember 2016 18. Januar 2017 Stirb langsam: MD5 Aufregung um Java-Lizenzen JSON-P JSR erreicht „Public Review”-Meilenstein Der nächste Schritt, den seit Langem als un- In der Java Community herrscht wieder Auf- JSON-P 1.1 (JSR 374) ist jetzt im „Public Review“ sicher eingestuften MD5-Algorithmus ein- regung – diesmal wegen eines Beitrags im und wartet auf Feedback aus der Community. zumotten, ist noch einmal um ein Quartal Online-Magazin „The Register” vor ein paar https://blogs.oracle.com/theaquarium/entry/ verschoben worden: Mit dem „Critical Patch Tagen. Beim Titel „Oracle zielt auf Java Nicht- json_p_1_1_jsr2 Upgrade” im April soll das JRE aber endgültig Zahler” und dem entsprechenden Bild, bei mit MD5 signierte Jars als unsigniert ansehen. dem man in eine Gewehrmündung schaut, Eigentlich sollte das schon in diesem Monat kann einem schon etwas mulmig werden, ins- 19. Januar 2017 der Fall sein, Oracle ist aber nach eigenen besondere wenn ein Lizenz-Audit bevorsteht. Angaben von einer Reihe von Kunden gebe- Inhaltlich geht es in dem Beitrag darum, dass OpenJDK 9 ist „feature complete” ten worden, ihnen noch etwas Zeit zu lassen. Oracle weltweit zwanzig Neueinstellungen Die Entwicklung des JDK 9 geht im Rahmen Auch SHA-1 soll dann nicht mehr in Zertifi- vorgenommen habe, die sich ausschließlich des im Oktober 2016 aktualisierten Zeit- katsketten akzeptiert werden, die an einem um Java-Lizenzverstöße kümmern sollen. Ei- plans voran. Mark Reinhold hat soeben das Default-Root-Zertifikat aus dem JDK hängen. nige Kunden sollen bereits fünfstellige Beträ- Erreichen des wichtigen Meilensteins „Fea- www.java.com/en/jre-jdk- cryptoroadmap.html ge gezahlt haben. Weiter heißt es: „Experts are ture Extension Complete” verkündet – alle now advising extreme caution in downloading JEPs und kleineren Verbesserungen sind Java SE”. Nun klingt ja die Zahl von zwanzig Au- also integriert. Weitere Änderungen, abge- ditoren erst einmal nicht furchterregend, wenn sehen von Bugfixes, kommen nun nur noch man mal ganz forsch annimmt, dass Java doch aus besonders wichtigen Gründen in das bei einigen Firmen weltweit im Einsatz ist. Release. Das angekündigte Release-Datum Diejenigen, die es trifft, dürfte das sicher nicht im Juli erscheint damit realistisch. trösten. Nur: Der Text liefert zwar im Prinzip die http://mail.openjdk.java.net/pipermail/jdk9- entscheidenden Informationen, schürt aber dev/2017-January/005505.html beim unbedarften Leser doch mehr Angst als nötig. Was vielleicht damit zusammenhängt, dass der im Text zitierte Experte Gründer einer 23. Januar 2017 Firma ist, die mit Services rund um das Oracle- Lizenzmanagement Geld verdient … Jedenfalls Reza Rahman zu Java-EE-Umfragen Andreas Badelt wird das Thema im iJUG ausgiebig diskutiert. Reza Rahman, Ex-Oracle-Mitarbeiter und Leiter der DOAG SIG Java Es herrscht allerdings Einigkeit darüber, dass Vorkämpfer der Java EE Guardians, hat in es abgesehen von lizenzpflichtigen Java-Em- seinem Blog auf die Ergebnisse der Java- bedded-Varianten erst mit dem Einsatz von „- EE-8-Umfrage von Oracle reagiert und sie XX:+UnlockCommercialFeatures” beim Java- mit der Umfrage verglichen, die die Guardi- Aufruf gefährlich wird. Dieser Schalter sollte ans gemeinsam mit DZone im Herbst 2016 auch dem leichtsinnigsten Nutzer zumindest durchgeführt hatten (die Ergebnisse der Gu- eine Ahnung seiner möglichen Konsequenzen ardians-Umfrage waren vor der JavaOne be- vermitteln. reits mit Oracle geteilt worden). Kernpunkt https://www.theregister.co.uk/2016/12/16/ seines Blog-Eintrags ist, dass sie relativ nah oracle_targets_java_users_non_compliance/ beieinander liegen – eine grundsätzliche Bestätigung des Oracle-Kurses also. Die Aufregung um Java EE könnte sich also lang- Er organisierte von 2001 bis 2015 ehrenamtlich die 23. Dezember 2016 sam wieder legen, wenn alle Java EE JSRs Special Interest Group (SIG) Development sowie die SIG endlich die nötige Fahrt aufnehmen. Am Java der DOAG Deutsche ORACLE-Anwendergruppe Java-Champions reagieren auf Lizenz- Ende seines Blog-Eintrags verweist Reza e.V. und war in dieser Zeit ehrenamtlich in der Develop- Diskussion noch auf das MicroProfile, zu dem Oracle ment Community aktiv. Seit 2015 ist Andreas Badelt Die Java-Champions, eine von Oracle un- sich auch noch klar positionieren muss: „The Mitglied in der neugegründeten Java Community der terstützte, aber grundsätzlich unabhängige idea is to make collaboration-based micro- DOAG Deutsche ORACLE-Anwendergruppe e.V. Java aktuell 2-2017 | 7 + Update An dieser Stelle erhalten Sie in jeder Ausgabe ein Update über das Geschehen in der Java-Community Achtung, Audit! Markus Karg, JUG Goldstadt Java ist Open Source, dann darf ich es doch wohl auch frei benutzen und verteilen? Weit gefehlt: Wenn ein Oracle-Auditor ins Haus kommt, sollte man Bescheid wissen! Die Fallstricke bei der Nutzung und Verteilung von Java 8 | iiiiiiiii www.ijug.eu iii Varianten von Java SE genannten Regeln– auch weitergegeben nistrations-Werkzeuge und sind zu- Oracle verpackt das eigentlich freie und werden. Sehr wahrscheinlich ist davon nächst pro Entwickler zu bezahlen. Die kostenlose OpenJDK in verschiedene Pa- auszugehen, dass Oracle mit „general Variante „Desktop“ beschneidet die kete, die in überwiegender Mehrzahl kos- purpose computing“ nur PCs und Server Client/Server-Fähigkeit der enthalte- tenpflichtig sind. Alle Varianten enthalten meint. Wie beispielsweise der Rechts- nen Monitoring-Werkzeuge. Der Zu- ein JRE und ein JDK sowie eine Reihe zu- streit mit Google über Java auf Android satz „for ISVs“ erlaubt dem Lizenzneh- sätzlicher Beigaben: zeigt, sind jedoch bereits die Nutzung mer darüber hinaus die Weitergabe von auf Mobiltelefonen sehr vermutlich und Java Flight Recorder und Java Mission • Das Projekt OpenJDK bietet JRE und JDK jede Art von Embedded-Anwendung in Control sowie Advanced Management selbst nicht als kompilierten Download Gerätschaften jeglicher Couleur – Stich- Console und Enterprise JRE Installer an an, sondern verweist auf die Produkt- wort „IoT“ – sogar ganz explizit von der Endkunden. Palette von Oracle. Es ist jedoch in Debi- kostenfreien Nutzung ausgeschlossen. • Oracle Java SE Suite entspricht Oracle an und anderen Distributionen enthalten. Für Mobiltelefone wirbt die Firma Gluon Java SE Advanced, enthält aber eine Die JVM ist weniger leistungsstark als mit Oracles Segen mit der Gluon VM, ei- JVM mit Soft-Real-Time-Fähigkeit. So- jene, die im Oracle-Java-SE-Download nem OpenJDK-Port auf Android und iOS. mit benötigt jeder Entwickler eine kos- enthalten ist. Daher enthält beispielswei- • Oracle Java SE Embedded enthält eine tenpflichtige Lizenz. se Raspbian (ein speziell auf den Rasp- spezielle, für die Nutzung in SBCs und • IBM und weitere Anbieter haben darü- berry Pi zugeschnittenes Debian-Derivat) Mikro-Controllern optimierte JVM sowie ber hinaus eine Reihe kostenloser und zusätzlich das proprietäre Oracle Java SE Zusatzbibliotheken. Das Produkt steht kostenpflichtiger Produkte im Ange- inklusive dessen leistungsfähiger Hot unter OTNLA. Die Entwicklung damit ist bot, die wiederum proprietäre Erweite- Spot Virtual VM (siehe unten). kostenlos, die Weitergabe an den End- rungen gegenüber OpenJDK enthalten • Oracle Java Platform Standard Edition kunden ist allerdings zu bezahlen, und (etwa andere JVMs wie IBM J9 oder Un- (Java SE) ist das, was allgemein als „Java zwar pro Gerät, auf dem sich später die terstützung für spezielle Betriebssys- Download“ bekannt ist und vom Nor- Embedded Runtime befindet. teme wie z/OS). mal-Anwender heruntergeladen wird. • Oracle Java SE Advanced Desktop (opti- Es ist kostenlos (aber nicht frei!) für onal for ISVs) sowie Oracle Java SE Ad- Der geneigte Leser möge sich auf den ent- „general purpose computing“ unter der vanced (optional for ISVs) enthalten die sprechenden Produktseiten selbst infor- Oracle Binary Code License (BCL). Es im Kasten „Kostenpflichtige Beigaben“ mieren, da dies sonst den Umfang dieses darf – unter Beachtung der in der BCL genannten Entwicklungs- und Admi- Artikels sprengen würde. Kurz vor Weihnachten geriet die media- verwenden, als Lizenzen eingekauft wur- lichkeit ist sicherlich die bessere Lösung: le Java-Welt in Aufruhr: Angeblich sei es den. Hierzu ist es, neben Selbstauskünften Wer Tools verwendet, die Geld kosten, sollte dem Durchschnitts-Java-Programmierer und Fernzugriff, teilweise auch gängige Pra- die typischerweise sowieso moderaten Kos- unmöglich, sich ein JDK zu besorgen, ohne xis, einen Auditor vor Ort zu senden, der mit ten nicht scheuen, sondern nutzenorientiert damit praktisch schon mit einem Fuß in der entsprechenden Werkzeugen ausgestattet denken und aktiv entsprechende Lizenzen Oracle-Abzock-Falle zu stehen. Tatsächlich die tatsächliche Nutzung im Firmennetz erwerben. hat sich das Ganze schon bald als unbegrün- zählt. Diese Prüfung muss nicht immer ne- Leider hat es Oracle einem bislang sehr dete Panikmache eines offenbar schlecht gativ sein: Teilweise stellt sich dabei auch leicht gemacht, sich nicht lizenzierte Soft- recherchierenden Online-Redakteurs her- heraus, dass bestimmte Produkte schon ware mit dem JDK- und JRE-Download auf ausgestellt. Trotzdem bleibt das flaue Ge- lange nicht mehr im Einsatz sind und man den Rechner zu ziehen. Das Gute ist, dass fühl, ob an der Sache nicht doch etwas dran sich deren Aktualisierung und Support künf- das kein Problem darstellt – solange man ist. Tatsächlich: Wer nicht aufpasst, kann tig sparen kann. Trotzdem sind Administ- diese Software nicht regelmäßig verwendet. beim Besuch des Auditors in echte Argu- ratoren und Geschäftsleitung gut beraten, Doch um welche Software geht es dabei mentationsnot geraten. Dieser Artikel klärt mit solchen Prüfungen zu rechnen und ein überhaupt und wieso ist im JRE nicht-lizen- auf und gibt Tipps, wie Lizenz-Risiken leicht ordentliches Lizenz-Management einzufüh- zierte Software drin? zu vermeiden sind. ren. Denn je nach Grad des Verschuldens Die Sache ist eigentlich ganz einfach. Sun können unter Umständen auch strafrechtli- Microsystems hat das JRE (also die von Sun Was ist eigentlich ein Lizenz- che Konsequenzen drohen. entwickelte HotSpot JVM sowie die Stan- Audit? Steht der Auditor erst einmal vor der Tür, dard-Bibliotheken, die zu Java SE zählen) Viele Softwarehersteller behalten sich das ist es meist zu spät. Eine Nutzung nicht li- als Open Source freigegeben und, wie auch Recht vor, beim Kunden zu überprüfen, ob zenzierter Software lässt sich schwer be- Oracle heute noch, auf jegliche Lizenzge- nicht etwa mehr Anwender die Software gründen und ist kein Kavaliersdelikt. Ehr- bühren verzichtet. Jeder darf diese freien Java aktuell 2-2017 | 9 Update Bestandteile im Rahmen der vorliegenden • Java Mission Control Fazit Lizenzbedingungen nutzen, ändern und • Java Flight Recorder Auch wenn die Panikmache in den Medien weitergeben. Sie werden durch das Projekt • Java Advanced Management Console übertrieben war – es gilt: „Augen auf beim „OpenJDK“ verwaltet und weiterentwickelt Microsoft Windows Installer (MSI) Java-Kauf!“ Selbst wenn kein Auditor sei- und sind beispielsweise in Debian wie auch Enterprise JRE Installer nen Besuch angekündigt hat, sollte man in vielen anderen Linux-Distributionen ent- • Java Usage Tracker sich überlegen, welche kostenlosen/kos- halten. Wer also nur das OpenJDK verwen- tenpflichtigen Werkzeuge wirklich benötigt det, ist immer auf der sicheren Seite. Nähere Informationen sind im Web zu finden, werden, und dann entweder auf OpenJDK Oracle verteilt jedoch kein reines Open- unter anderem in der Oracle-Produktüber- umsteigen, nur die kostenlosen Oracle- JDK. Um den Entwicklern, Endanwendern sicht (siehe „https://www.oracle.com/de/ Bestandteile nutzen und weitergeben oder und Administratoren das Leben zu verein- products/index.html“ und in der Java SE FAQ einen (kostenpflichtigen) Lizenzvertrag mit fachen, hat Oracle weitere Werkzeuge ent- (siehe „http://www.oracle.com/technetwork/ Oracle abschließen. wickelt beziehungsweise eingekauft (unter articles/javase/faqs-jsp-136696.html“). anderem durch die Übernahme der JRockit- Es besteht grundsätzlich keine Gefahr, Produktfamilie). Einige dieser Features wenn die normalen Downloads für Java SE Markus Karg und Werkzeuge sind in den Open-Source- JRE beziehungsweise Java SE JDK genutzt [email protected] Zweig eingeflossen, andere sind weiterhin werden und man von den kostenpflichti- Closed-Source, werden jedoch kostenfrei gen Beigaben einfach die Finger lässt. Ver- verteilt, und wiederum andere sind und mutlich wird sich auch kein Auditor daran bleiben kostenpflichtige Zusatzprodukte. stören, dass man sich diese Tools, da sie ja Es wäre nett gewesen, Oracle hätte diese schon einmal auf der Platte sind, einmal in in einen separaten Download verpackt. Lei- Ruhe anschaut, um über deren Kauf zu ent- der ist dem nicht so. scheiden. Ein Recht darauf, dass die ersten Der Original-Download des JRE und des paar Klicks kostenlos sind, hat man jedoch JDK enthält daher kostenpflichtige Zusatz- keineswegs. Wer also gar nicht wirklich am produkte, die der Auditor solange ignoriert, Kauf dieser Produkte interessiert ist, sollte wie sie nicht nachweislich verwendet wur- sie auch wirklich nicht starten. den. Startet man diese allerdings regelmä- Wer hingegen interessiert ist, dem bie- ßig, wird der Kaufpreis fällig! Daher ist es tet Oracle mehrere Optionen an. Teilweise Markus Karg fasziniert das Programmieren, seit er in wichtig zu wissen, welche Tools kosten- bedingen diese zusätzliche Downloads, teil- grauer Vorzeit einen Sinclair ZX Spectrum in die Hand bekam. Heute verantwortet er die Entwicklung eines pflichtige sind und welche nicht. weise handelt es sich lediglich um das Ab- unabhängigen Software-Herstellers. JAX-RS beglei- schließen eines zusätzlichen Lizenzvertrags. tet der gebürtige Pforzheimer seit Version 0.8 durch Kostenpflichtige Beigaben Gerade in Letzterem liegt der Grund, weshalb Feature Proposals, Mitarbeit an der Referenz-Imple- Oracle verteilt unter dem Namen „Java SE“ die Downloads des „eigentlich freien“ Java mentierung „Jersey“ und zuletzt in der Expert Group OpenJDK mit weiteren Beigaben. Diese sind SE die „eigentlich kostenpflichtigen“ Tools JSR 370. Einige Features von JAX-RS, aber auch von kostenpflichtig und sollten nur dann regel- bereits enthalten. Der Kasten „Varianten von anderen Java-APIs, stammen aus der Feder des JCP- mäßig genutzt werden, wenn entsprechen- Java SE“ erklärt, welche Optionen derzeit an- Mitglieds. Seine Freizeit widmet er der Kunst seiner de Lizenzen erworben wurden: geboten werden und warum es so viele gibt. Frau sowie einer nachhaltigen Gesellschaft. ave S Date the APEX Connect 2017 9. bis 11. Mai 2017 in Berlin http://apex.doag.org 10 |

Description:
der sich schon Frameworks wie Spring Boot, Dropwizard und andere tummeln. Der Name Feedback, die Mitarbeiter hören aber genau zu.” Daher
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.