Von Java Swing über JavaFX nach RISC-HTML

Größe: px
Ab Seite anzeigen:

Download "Von Java Swing über JavaFX nach RISC-HTML"

Transkript

1 Von Java Swing über JavaFX nach RISC-HTML Björn Müller, CaptainCasa Wir eine Community europäischer Software- Hersteller von Geschäftsanwendungen waren lange Zeit ganz gut mit Java Swing gefahren. Aber der Druck zu einer Modernisierung wurde zunehmend stärker. Ein Umstieg in Richtung JavaFX war zwar technologisch interessant, doch so recht brachte uns dieser auch nicht weiter Dann kam uns eine Idee, die für uns zum Game Changer wurde und uns den Weg in den Browser bahnte: RISC-HTML. Unser Swing-Client ist im Jahr 2007 entstanden. Eine Zeit, in der die einen uns rieten, ActionScript mit dem Macromedia/Adobe Player zu verwenden. Die anderen rieten uns, auf HTML-Frameworks zu setzen. Wir entschieden uns für Swing und dies aus guten Gründen. Swing war (und ist es auch noch ) rock-solid, performant und die Existenz langfristig gesichert. Geschäftsanwendungen haben in ihren Kernteilen sehr lange Lebenszyklen von teilweise weit mehr als Jahren und werden in der Regel von Teams überschaubarer Größe entwickelt und gewartet. Die Lust und Zeit, die Dialoge solcher Anwendungen alle paar Jahre mit anderen Technologien neu zu entwickeln, ist begrenzt. Dies gilt genauso für die Lust und Zeit, sich mit Problemen wie Browser- Kompatibilität herumzuschlagen. Deswegen liegt der größte Fokus neben der Verkaufbarkeit und Attraktivität der Anwendung auf einer langfristigen Stabilität (siehe Abbildung 1). So ganz direkt wurde Swing nicht auf die Anwendungsentwicklung losgelassen: Unser Swing-Frontend lief im Client des Benutzers und bekam vom Server das Layout als XML-Beschreibung der Dialoge zugesendet. Diese Dialogbeschreibungen wurden also vom Swing-Client ausgerendert. Eingaben des Benutzers wurden zu passenden Zeitpunkten an den Server übermittelt und dort in die Java-Anwendung eingearbeitet, worauf der Server dann ein Dialogupdate zum Client zurücksendete. Der Swing-Client war somit Java aktuell 05/17 37

2 Abbildung 1: Eine Anwendung, drei Clients: Swing (2007), FX (2012) und RISC-HTML (2016) kein konkret implementierter Anwendungsdialog, sondern eine generische Rendering Engine (siehe Abbildung 2). Modernisierungsdruck Natürlich gingen drei Entwicklungen nicht an uns vorüber: Zum einen war da die zunehmende Qualität der Browser und die zunehmende Steigerung der Performance von JavaScript. Zum anderen gab es zunehmende generelle Zweifel an Java im Frontend vor allem getrieben durch Sicherheitsprobleme der Java VM. Hinzu kam das Erscheinen von JavaFX als Ablösung von Java Swing das spätestens mit JavaFX 2.0 eine gewisse Ernsthaftigkeit zeigte. Alle drei Entwicklungen nagten an der Attraktivität unserer Swing-Client- Lösung und damit an der Attraktivität der Anwendungslösungen unserer Community-Mitglieder. JavaFX 2.0 im Jahr 2011 starteten wir also die Reimplementierung unseres Clients. Beim Umstieg kam uns natürlich unsere entkoppelte Client-Struktur zu Hilfe letztlich mussten wir ja nur den generischen Rendering-Client in JavaFX reimplementieren. JavaFX hat uns dabei von Release 2.0 an technologisch gut gefallen. Wir haben schnell einen Weg gefunden, um effektiv damit zu entwickeln, und blieben innerhalb dieses Wegs auch von Stabilitätsproblemen verschont. Noch konkreter: Wir fanden JavaFX klasse. Umstieg auf JavaFX Unsere Versuche, mithilfe existierender Web-Frameworks unseren generischen Client in HTML/JavaScript zu reimplementieren, scheiterten regelmäßig. Gründe waren die üblichen Verdächtigen: mangelnde Browser-Kompatibilität, mangelnde Performance bei großen Szenarien und mangelnde Layout-Fähigkeiten. Es zeigte sich, dass die Frameworks für überschaubare Szenarien funktionierten, ab einer gewissen Komplexität jedoch immer an ihre Grenzen stießen. Für uns war somit die Richtung gegeben: Wir blieben Client-seitig auf dem Java-Zug und setzen darauf, dass das Thema Java im Client über JavaFX wieder salonfähig wird. Mit dem Erscheinen von Abbildung 2: Abgekoppelter Client 38

3 Einige Probleme, die wir im Swing-Client funktional hatten, wurden in JavaFX solide gelöst: das freiere Styling der Komponenten, die bessere Integrierbarkeit von HTML-Inhalten und auch im Bereich von Geschäftsanwendungen nicht ganz unwichtig die Möglichkeit, professionell anmutende Animationen zu verwenden. Natürlich gab es auch technologische Herausforderungen: Ein Hauptkampfgebiet war dabei eine gewisse Trägheit des Clients beim Aufbau großer Dialoge, etwa mit einer hohen Anzahl von Textfeldern. Summa summarum waren wir aber technologisch zufrieden und konnten nach einem Jahr einen Client zur Verfügung stellen, der eine weitgehend kompatible Alternative zu unserem Swing-Client darstellte und dazu optisch noch eine Ecke attraktiver war. Nun standen wir da, mit einem frisch aufpolierten Client in moderner JavaFX-Technologie und mussten feststellen, dass JavaFX bei Weitem nicht in dem Maße abhob, wie wir es erwartet oder vielmehr gehofft hatten. Im Gegenteil: JavaFX wurde (und wird weiterhin) gerade aus dem Java-Lager heraus äußerst kritisch beurteilt und hat nie ein gewisses Hype-Potenzial erreicht. Das bedeutete für die Software-Hersteller unserer Community: Die Ressentiments gegenüber Java im Frontend blieben unvermindert groß und wurden teilweise durch Zweifel an der Zukunftsfähigkeit von JavaFX noch verstärkt. Der Druck in Richtung HTML-Client stieg, aber unsere technologischen Bedenken, mit bestehenden HTML- Frameworks langfristig unsere Probleme zu lösen, blieben bestehen. RISC-HTML: Eine etwas andere Nutzung von HTML und JavaScript Genau in dieser Phase entwickelten wir eine Idee, die als Laborversuch startete und binnen kurzer Zeit zum Selbstläufer wurde. Die Idee bekam den Namen RISC-HTML, in Anlehnung an den Paradigmenwechsel, der in den 1990er-Jahren durch die Entwicklung von RISC-Prozessoren im Bereich der Hardware vollzogen wurde. RISC steht bei uns für Reduced Instruction Set Client. Die Idee lautet: Zum flexiblen Erstellen von Oberflächen-Komponenten benötigt man eigentlich nur ganz wenige optische Grundelemente, die ein Browser zur Verfügung stellen muss. Die beiden wichtigsten Grundelemente sind dabei Rechtecke, die gestylt werden können, und Texteingabe-Felder. Diese Grundelemente müssen nun so zusammengesetzt werden, dass aus ihnen vollständige, funktionale Komponenten werden, also Buttons, Combo-Boxen, Grids, Dialoge etc. Für das Zusammensetzen wird allein die absolute Positionierung per x,y,width,height,(z) -Koordinate verwendet. Beispiel: Ein Button ist nichts anderes als eine Schachtelung von Rechtecken. Gleiches gilt für die Combo-Box; sie ist eine Zusammenschachtelung von Rechtecken um ein Textfeld und beinhaltet zusätzlich ein Dialog-Rechteck, das sich per z-koordinate in den Vordergrund drängt (siehe Abbildung 3). Das Zusammensetzen der Grundelemente geschieht über JavaScript. Es werden also Komponentenklassen programmiert, die zur Laufzeit die Grundelemente im DOM-Tree anlegen und arrangieren sowie Events verarbeiten. Jede Klasse hat ein standardisiertes Set an Methoden und muss beispielsweise nach außen berichten, was ihre minimale beziehungsweise präferierte Größe ist. Jede Komponente ist für die Ausrichtung ihrer beinhalteten Grund- Abbildung 3: Alles baut sich aus Rechtecken zusammen elemente zuständig; im Falle eines Buttons ist die Logik hierfür überschaubar, bei komplexen Layout-Komponenten, etwa mit einer Mischung aus prozentualen und festen Größenangaben, ist die Logik entsprechend komplexer. Im RISC-HTML-Ansatz werden also alle Komponenten auf Basis minimaler Grundelemente zusammengesetzt. Ganz konkret im Browser sind dies zwei Elemente: das DIV- und das INPUT-beziehungsweise TEXTAREA-Element. Das CSS-Styling sorgt dafür, dass die zusammengesetzten Elemente am Ende auch wie die betreffende Komponente aussehen. Das Verfahren kann man recht gut veranschaulichen, wenn man sich den DOM-Tree eines konkret mit RISC-HTML aufgebauten Dialogs im Entwicklermodus des Browsers anschaut. Man sieht vor allem eines: eine tiefe Schachtelung von absolut positionierten DIV- Elementen (siehe Abbildung 4). Die Vorteile des RISC-HTML Warum wurde der RISC-HTML-Ansatz vor dem Hintergrund einer Vielzahl existierender Web-Ansätze überhaupt erfunden? Der erste Hauptgrund war die Schaffung einer langfristig stabilen Grundlage für die Erstellung von Komponenten mit hoher Komplexität einerseits und mit technisch garantierter Browser-Kompatibilität andererseits. Vom Browser selbst werden nur einfachste Elemente erwartet ( DIV, INPUT / TEXTAREA ), diese kommen zudem nur auf einfachste Art und Weise zum Einsatz (absolute Positionierung). Damit ergibt sich eine dramatische Reduktion der Abhängigkeiten und damit der Kompatibilitätsprobleme. Der zweite Hauptgrund war die Schaffung einer Grundlage, auf deren Basis beliebige Layout- und Gestaltungs-Strategien entwickelt werden können. Als Beispiel sei hier genannt, dass gängige HTML- Frameworks immer Probleme im Bereich des flexiblen vertikalen Ausrichtens haben: Ein Dialog hat einen festen Header-Bereich, einen scrollbaren Innenbereich und einen festen Footer-Bereich für gängiges HTML ist so eine Konstruktion immer noch eine Herausforderung. Wir alle kennen die HTML-Seiten, auf denen man immer ganz nach unten zu den Verarbeitungsbuttons scrollen muss. Eigene Layouting-Verfahren sind im Browser nur über den Umweg des nachträglichen Ausmessens von Inhalten zu realisieren; der Browser rendert also erst aus; danach weiß man, wie man das Layout anpassen muss. Das Layout richtet sich dann vor dem Auge des Benutzers aus. Was uns in der Praxis von Anfang an mehr als überraschte, das war die Performance, mit der über den RISC-HTML-Ansatz erstellte Dialoge aufgebaut und verarbeitet wurden. Ehrlich gesagt hatten wir Java aktuell 05/17 39

4 Abbildung 4: Schachtelung von einfachsten Grundelementen, absolut positionierten DIVs hier massive Probleme erwartet, da bei RISC-HTML doch ein erheblicher Teil von Rendering-Logik, die klassisch im nativen Bereich des Browsers abläuft, nun auf einer JavaScript-Ebene abläuft. Aber im Gegenteil: Auch wenn die Anzahl der zusammengesteckten Grundelemente durchaus hoch ist und die aufgebauten DOM- Element-Bäume deswegen groß sind, kommen die Browser damit hervorragend zurecht. Der Browser wird ja auch nur noch zum Zeichnen absolut positionierter Rechteck-Bereiche verwendet. Er rechnet nicht mehr selbst aus, wo welches Element nun genau hinkommt, sondern führt nur noch das aus, was ihm die entsprechende JavaScript-basierte Layout-Komponente vorgibt. JavaScript ist mittlerweile einfach schnell geworden und auf einem Level, der es erlaubt, auch Algorithmen einer gewissen Komplexität darin abzubilden. Eine Anwendung mit RISC-HTML bauen RISC-HTML ist zunächst also eine JavaScript-Bibliothek, in der über JavaScript-Klassen Komponenten (Button, Feld, Grid, Dialoge etc.) instanziiert und zusammengesetzt werden können. Komponenten haben ganz klassische Properties und Events. Jede Komponente zerlegt sich dabei in andere Komponenten oder auf unterster Ebene rendert sich in entsprechende Grundelemente aus (Rechtecke, Texteingabe-Felder). Wie nun konkret eine Anwendung an diese Library anschließt, das ist prinzipiell frei gestaltbar. Freunde einer direkten, Client-seitigen JavaScript-Anwendungsverarbeitung können nun direkt Single-Page-Applications bauen. Innerhalb unserer CaptainCasa-Community ist der Ansatz natürlich ein anderer: Hier wurde der generische Rendering-Client, der nichts anderes macht, als vom Server kommende Dialogbeschreibungen auszurendern, auf Basis der RISC-HTML-Library reimplementiert. Vom Server kommende Layoutbeschreibungen werden also in entsprechende RISC-HTML-Komponenten umgesetzt. Abbildung 5: Hello world -Anwendung <t:rowbodypane> <t:label text="your Name" width="100" /> <t:field text="#{demohelloworld.name" width="200" /> <t:coldistance width="100" /> <t:button actionlistener="#{demohelloworld.on- Hello" text="hello" /> <t:rowdistance height="20" /> <t:label text="result" width="100" /> <t:field enabled="false" text="#{demohelloworld. output" width="100%" /> </t:rowbodypane> Listing 1 CaptainCasa Enteprise Client Wie hat man sich das aus Sicht der Anwendungsentwicklung vorzustellen? Dazu das berühmte Hello-World-Beispiel (siehe Abbildung 5). Im einfachsten Falle definiert die Anwendung entweder direkt oder per Wysiwyg-Layout-Editor einen konkreten Dialog als XML- Definition (siehe Listing 1). 40

5 package demo; import javax.faces.event.actionevent; public class DemoHelloWorld { String m_name; String m_output; Listing 2 public void setname(string value){ m_name = value; public String getname() { return m_name; public String getoutput() { return m_output; public void onhello(actionevent ae) { if (m_name == null) m_output = "No name set."; else m_output = "Hello World, "+m_name+"!"; In der XML-Definition sind die Auswahl und das Arrangement der Komponenten definiert. Attribute der Komponenten werden entweder direkt gesetzt oder sie werden per Expression an eine Java-Bean ( Managed Bean ) gebunden. Diese Java-Bean wird nun implementiert (siehe Listing 2). Das war s. Die Laufzeitumgebung, auf Server-Seite übrigens JSF-basiert, übernimmt nun den Rest: Der generische Client fordert das Layout an, der Server liest das XML-Layout, baut den Kontakt zur Managed Bean auf und sendet das gefüllte XML-Layout zum Client, der dieses dann optisch für den Benutzer ausrendert. Der Benutzer sieht den Dialog und tätigt Eingaben. Beim Drücken des Buttons werden Eingaben und Events per Request zum Server geschickt, der sie dann der Managed Bean weitergibt. Änderungen in der Bean werden dann wieder zurück zum Client übertragen. Die Kommunikation zwischen Client und Server-Verarbeitung verläuft dabei inhaltlich immer so, dass nur Änderungen übertragen werden; dies gilt speziell für die Übermittlung der Layouts. RISC-HTML ist doch gar kein richtiges HTML Wie sieht der DOM-Element-Baum eines mit RISC-HTML erstellten Dialogs aus? Es gibt praktisch nur noch DIV und ein paar INPUT beziehungsweise TEXTAREA, kein TABLE, TR, BUTTON, SPAN, UL oder LI. Für diejenigen, die aus dem klassischen HTML-Umfeld kommen, ist das zunächst einmal gegen die Lehre: Die Semantik eines Dialogs lässt sich nicht mehr durch direktes Anschauen auf das gerenderte HTML erkennen. Wir können dem entgegenhalten, dass das gängige Praxis ist. Jede Control-Bibliothek gibt sich nicht mit den doch recht einfach gestrickten HTML-Elementen zufrieden, sondern baut kräftig eigene, höherwertige Komponenten (etwa eine Kalender-Komponente), die sich dann wieder in echte HTML-Elemente zerlegt. Zugegeben, CaptainCasa treibt das etwas mehr auf die Spitze, aber das Prinzip ist das gleiche. Für bestimmte Bereiche, in denen die Semantik von Komponenten hervorstechen muss, gibt es als Folge dieser Entwicklung entsprechende Möglichkeiten, die Semantik explizit zu definieren. Der wichtigste Bereich ist Accessibility. Dort werden im RISC-Client beispielsweise die semantischen Informationen über die ARIA-Schnittstelle übergeben. RISC-HTML wurde erfunden, um durchaus komplexe Sachbearbeiter-Dialoge von Geschäftsanwendungen effektiv und langfristig stabil abbilden zu können. Es ist dort geeignet, wo Oberflächen programmiert werden. Dies sind typischerweise Dialoge mit einem gewissen Umfang und einer gewissen Komplexität. Bei der grafischen Ausgestaltung der Dialoge geht es mehr darum, ein konsistentes Look & Feel über die vielen Dialoge einer Anwendung effizient zu gestalten, und nicht darum, jeden einzelnen Dialog individuell zu designen. Der RISC-HTML-Ansatz ist naturgemäß nicht dort zu Hause, wo Oberflächen über HTML-Design beziehungsweise HTML-Templating entstehen. Hier steht ja gerade das klassische HTML und damit das explizite Designen mit HTML-Mitteln im Vordergrund. Fazit Wir kamen von Swing, standen etwas ratlos mit einer JavaFX- Umsetzung herum und landeten über die Entwicklung einer neuen Methode, RISC-HTML, im Browser. Dort fühlen wir uns nun angekommen. Der RISC-HTML-Ansatz bietet uns im Browser eine Architektur-bedingte Stabilität und Flexibilität, auf deren Basis wir die langfristig orientierten Geschäftsanwendungen der Community-Mitglieder mit gutem Gewissen aufsetzen. Ein Austausch der UI-Technologie war in unserem Framework vergleichsweise einfach, weil von Anfang an die Client-Verarbeitung in Form einer generischen Rendering-Engine komplett von der Anwendungsverarbeitung getrennt war. Für die Anwendungsentwicklungen bedeutete dies, dass sie von dem Wechsel der Client-Technologie weitestgehend unberührt waren. Und zu guter Letzt: Der CaptainCasa-Enterprise-Client so heißt das Client-Framework unserer Community kann kostenfrei (dies gilt sowohl für die Entwicklung als auch für die Nutzung) von der Seite http: / bezogen werden. Dort finden sich auch weitergehende Informationen und Online-Demos. Björn Müller bjoern.mueller@captaincasa.com Björn Müller arbeitete zunächst zehn Jahre in der Anwendungsentwicklung, Basisentwicklung und Architekturentwicklung für SAP erfolgte die Gründung der Casabac Technologies GmbH als Pionier im Bereich von Rich Internet Applications auf Basis von Client-Scripting (AJAX) gründete er die CaptainCasa Community, eine Verbindung mittelständischer, deutschsprachiger Softwarehäuser mit dem Fokus auf Rich Client Frameworks für umfangreiche, langlebige Anwendungssysteme. Java aktuell 05/17 41

iii iii iii iii Java überall Erfahrungen, Ideen und Lösungen für Java-Entwickler

iii iii iii iii Java überall Erfahrungen, Ideen und Lösungen für Java-Entwickler Herbst 2011 Das ijug Magazin Javaaktuell Javaaktuell Magazin der Java-Community Java überall Neu: Java SE7 Interview mit Patrick Curran, Vorsitzender des JCP Für Android entwickeln Testen mit Arquillian

Mehr

Java GUI Quo vadis? Björn Müller, CaptainCasa

Java GUI Quo vadis? Björn Müller, CaptainCasa Java GUI Quo vadis? Björn Müller, CaptainCasa Björn Müller SAP, 1991 Anwendungsentwicklung Architekturentwicklung Java Application Server Casabac Technologies, 2001 AJAX Pionier 2005 Übernahme durch Software

Mehr

Leichtgewichtige Web 2.0-Architektur für komplexe Business-Anwendungen Nicolas Moser PRODYNA AG

Leichtgewichtige Web 2.0-Architektur für komplexe Business-Anwendungen Nicolas Moser PRODYNA AG 05.07.2012 Leichtgewichtige Web 2.0-Architektur für komplexe Business-Anwendungen Nicolas Moser PRODYNA AG Agenda 01 Einführung 02 Architektur 03 Lösungen 04 Zusammenfassung 2 2 Agenda 01 Einführung 02

Mehr

Björn Müller CaptainCasa. HTML5 oder JavaFX Was nehme ich denn nun?

Björn Müller CaptainCasa. HTML5 oder JavaFX Was nehme ich denn nun? Björn Müller CaptainCasa HTML5 oder Was nehme ich denn nun? HTML5 oder Was nehme ich denn nun? Björn Müller 2001 HTML/JavaScript basierte Technologien Casabac GUI Server 2007 Java-basierte Client Technologien

Mehr

CaptainCasa Enterprise Client. CaptainCasa Enterprise Client. CaptainCasa Enterprise Client

CaptainCasa Enterprise Client. CaptainCasa Enterprise Client. CaptainCasa Enterprise Client Rich Client Benutzeroberflächen für operativ genutzte, umfangreiche Unternehmensanwendungen 1 Diese Broschüre beschreibt die inhaltlichen Grundlagen des CaptainCasa Enterprise Clients. Sie gibt Einblick

Mehr

Moderne Web- Anwendungen mit

Moderne Web- Anwendungen mit Moderne Web- Anwendungen mit Oliver.Damm@akquinet.de September 2013 Web- Anwendungen mit Vaadin???

Mehr

Reporting Lösungen für APEX wähle Deine Waffen weise

Reporting Lösungen für APEX wähle Deine Waffen weise Reporting Lösungen für APEX wähle Deine Waffen weise Dietmar Aust Opal-Consulting Köln Schlüsselworte: Oracle APEX, Reporting, JasperReports, PL/PDF, BI Publisher, OPAL:XP, Doxxy, Oracle Rest Data Services

Mehr

Webentwicklung mit Vaadin 7. Theoretische und praktische Einführung in Vaadin 7. Christian Dresen, Michael Gerdes, Sergej Schumilo

Webentwicklung mit Vaadin 7. Theoretische und praktische Einführung in Vaadin 7. Christian Dresen, Michael Gerdes, Sergej Schumilo Webentwicklung mit Vaadin 7 Theoretische und praktische Einführung in Vaadin 7 Christian Dresen, Michael Gerdes, Sergej Schumilo Agenda Allgemeines Architektur Client-Side Server-Side Vaadin UI Components

Mehr

Vaadin ein Erfahrungsbericht

Vaadin ein Erfahrungsbericht Vaadin ein Erfahrungsbericht JUG SWITZERLAND 5. Februar 2013 Benjamin Schupp / Markus Kinzler mp technology consulting GmbH Speakers Benjamin Schupp Lead Architect, konzipiert und entwickelt Java-basierte

Mehr

Rich Internet Applications, Flex & Mate. (Ja, das ist Grafische Benutzeroberflächen!) 18.03.2010 Jakob Külzer jakob.kuelzer@gmail.

Rich Internet Applications, Flex & Mate. (Ja, das ist Grafische Benutzeroberflächen!) 18.03.2010 Jakob Külzer jakob.kuelzer@gmail. Rich Internet Applications, Flex & Mate (Ja, das ist Grafische Benutzeroberflächen!) 18.03.2010 Jakob Külzer jakob.kuelzer@gmail.com Überblick Mein Thema im Überblick 1. Definitionen 2. Rich Internet Applications

Mehr

DCCS Lotusphere Nachlese 2012 Was sind XPages? Mobile Features für XPages

DCCS Lotusphere Nachlese 2012 Was sind XPages? Mobile Features für XPages Wir automatisieren und optimieren Ihre Geschäftsprozesse DCCS Lotusphere Nachlese 2012 Was sind XPages? Mobile Features für XPages Thomas Brandstätter 06.03.2012 www.dccs.at Agenda Theorie Was sind XPages

Mehr

Webinar: Einführung in ICEfaces

Webinar: Einführung in ICEfaces Webinar: Einführung in ICEfaces präsentiert von VOIP-Audio ist standardmässig aktiviert Alternatives Einwählen: +41 (0) 415 0008 65 ICESOFT TECHNOLOGIES INC ICESOFT Donnerstag, TECHNOLOGIES 26. März 2009

Mehr

Oracle Enterprise Scheduler (ESS) Unleashed Carsten Wiesbaum esentri AG Ettlingen Schlüsselworte Einleitung Oracle Enterprise Scheduler (ESS)

Oracle Enterprise Scheduler (ESS) Unleashed Carsten Wiesbaum esentri AG Ettlingen Schlüsselworte Einleitung Oracle Enterprise Scheduler (ESS) Oracle Enterprise Scheduler (ESS) Unleashed Carsten Wiesbaum esentri AG Ettlingen Schlüsselworte Automatisierung, Betrieb, Middleware Einleitung Der Oracle Fusion Middleware Stack beinhaltet eine leistungsstarke

Mehr

Kategorisierung von Web-Frameworks im Java-Umfeld

Kategorisierung von Web-Frameworks im Java-Umfeld Unüberschaubare Auswahl im Alltag 1/11/2011 Seite 2 Unüberschaubare Auswahl bei Web-Frameworks 1/11/2011 Seite 3 Viele gute Artikel in Fachzeitschriften 1/11/2011 Seite 4 Flame War unerwünscht, aber überall

Mehr

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Präsentation zur Diplomarbeit von Übersicht Java 2 Enterprise Edition Java Servlets JavaServer Pages Enterprise JavaBeans Framework

Mehr

XPages Good to know. Benjamin Stein & Pierre Hein Stuttgart 7. Mai 2015

XPages Good to know. Benjamin Stein & Pierre Hein Stuttgart 7. Mai 2015 XPages Good to know Benjamin Stein & Pierre Hein Stuttgart 7. Mai 2015 Agenda 1. Einführung Was sind XPages? 2. Allgemeine Tipps Allgemeine Tipps für die Verwendung von XPages 3. Designer Tipps Tipps für

Mehr

<Insert Picture Here> Schnelle Anwendungen mit Oracle Application Express

<Insert Picture Here> Schnelle Anwendungen mit Oracle Application Express Schnelle Anwendungen mit Oracle Application Express IT-Fundstücke... Einzelplatz- und Abteilungslösungen Excel-Spreadsheets PC-Datenbanken (z.b. MS Access) Skripting-Lösungen Abteilung

Mehr

AJAX DRUPAL 7 AJAX FRAMEWORK. Was ist das Ajax Framework? Ein typischer Ablauf eines Ajax Requests Die Bestandteile des Ajax Frameworks.

AJAX DRUPAL 7 AJAX FRAMEWORK. Was ist das Ajax Framework? Ein typischer Ablauf eines Ajax Requests Die Bestandteile des Ajax Frameworks. DRUPAL 7 AJAX FRAMEWORK Was ist das Ajax Framework? Ein typischer Ablauf eines Ajax Requests Die Bestandteile des Ajax Frameworks AJAX Beispiele Fragen: Gibt es jemanden der noch gar keine Erfahrungen

Mehr

Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web 19.11.2015, Bilster Berg Drive Resort Michael Steinhoff, agentbase AG. www.agentbase.

Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web 19.11.2015, Bilster Berg Drive Resort Michael Steinhoff, agentbase AG. www.agentbase. Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web 19.11.2015, Bilster Berg Drive Resort Michael Steinhoff, agentbase AG www.agentbase.de 1 Agenda Grundlagen Modernisierung Möglichkeiten mit Domino

Mehr

Einführung in die Cross-Plattform Entwicklung Das Intel App Framework

Einführung in die Cross-Plattform Entwicklung Das Intel App Framework Einführung in die Cross-Plattform Entwicklung Das Intel App Framework Einführung Dieses Hands-on-Lab (HOL) macht den Leser mit dem Intel App Framework vom Intel XDK vertraut. Es wird Schritt für Schritt

Mehr

Browserbasiertes, kollaboratives Whiteboard

Browserbasiertes, kollaboratives Whiteboard WS 2011/12 Bachelorarbeit Browserbasiertes, kollaboratives Whiteboard Sebastian Dorn 1 von 21 Inhalt 1. Motivation 2. Analyse 3. Design 4. Evaluation 5. Fazit Inhalt 2 von 21 Motivation Zusammenarbeit

Mehr

OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes

OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes 1 XSS: Cross-Site Scripting 1.) Es gelangen Daten in den Web-Browser, die Steuerungsinformationen

Mehr

JBoss Seam. Ein JEE 5 Webframework. Jörg Wüthrich Infopoint, 4. Februar 2009

JBoss Seam. Ein JEE 5 Webframework. Jörg Wüthrich Infopoint, 4. Februar 2009 JBoss Seam Ein JEE 5 Webframework Jörg Wüthrich Infopoint, 4. Februar 2009 Inhalt Einführung Warum Seam? Zentrale Konzepte Demo Validierung Abschliessende Gedanken 04.02.2009 Infopoint - JBoss Seam - Jörg

Mehr

Stundentische Aushilfe Content-Pflege Web (m/w) ab sofort

Stundentische Aushilfe Content-Pflege Web (m/w) ab sofort Stundentische Aushilfe Content-Pflege Web (m/w) ab sofort Aufgaben, die Ihnen gefallen werden Unterstützung des Implementierungs-Teams Pflege von Webseiten mittels verschiedener Content Management Systeme

Mehr

Projekt AGB-10 Fremdprojektanalyse

Projekt AGB-10 Fremdprojektanalyse Projekt AGB-10 Fremdprojektanalyse 17. Mai 2010 1 Inhaltsverzeichnis 1 Allgemeines 3 2 Produktübersicht 3 3 Grundsätzliche Struktur und Entwurfsprinzipien für das Gesamtsystem 3 3.1 Die Prefuse Library...............................

Mehr

Java Server Pages (JSP)

Java Server Pages (JSP) Überblick über Internet-Technologien Server-Technologien Datenbankkopplung Servlets JSP PHP CGI XML+XSL Dokumentsprachen Client-PGM ruft DB-Server Web-Server ruft Datenbankserver HTML+Javascript HTML+Applets

Mehr

Applets Belebung von Webseiten. Dipl.-Ing. Wolfgang Beer

Applets Belebung von Webseiten. Dipl.-Ing. Wolfgang Beer Applets Belebung von Webseiten Dipl.-Ing. Wolfgang Beer Was sind Applets? Java Klassen, die spezielle Richtlinien befolgen, um: "in Internet-Browsern lauffähig zu sein" Somit ist, komplexere Funktionalität,

Mehr

windream SDK Einfache System-Erweiterungen und Software-Integrationen mit windream

windream SDK Einfache System-Erweiterungen und Software-Integrationen mit windream windream SDK Einfache System-Erweiterungen und Software-Integrationen mit windream 2 Einfache System-Erweiterungen und Software- Integrationen mit windream Die offene Architektur des Enterprise-Content-Management-Systems

Mehr

ActiveX Scripting IE und DHTML (DOM): Architektur, Beispiele (Object Rexx)

ActiveX Scripting IE und DHTML (DOM): Architektur, Beispiele (Object Rexx) ActiveX Scripting IE und DHTML (DOM): Architektur, Beispiele (Object Rexx) Oliver Spritzendorfer Thomas Fekete ActiveX Technologie für ausführbaren Programmcode auf Web-Seiten wiederverwendbare Softwarekompononente

Mehr

Xpert.ivy Developer Day 2014. User Dialog Features. Autoren: Peter Stöckli & Flavio Sadeghi Datum: 14. Mai 2014

Xpert.ivy Developer Day 2014. User Dialog Features. Autoren: Peter Stöckli & Flavio Sadeghi Datum: 14. Mai 2014 Xpert.ivy Developer Day 2014 User Dialog Features Autoren: Peter Stöckli & Flavio Sadeghi Datum: 14. Mai 2014 1 Inhalt Übersicht New User Dialog Wizard Form Fields CMS & Html Dialog Layouts JSF 2.2 / Primefaces

Mehr

Agenda. Einleitung. Einbinden von JSF AJAX Beispiele Komponenten Entwicklung PrimeFaces Praktikum. Was ist JSF Aufbau und Techniken HTML vs.

Agenda. Einleitung. Einbinden von JSF AJAX Beispiele Komponenten Entwicklung PrimeFaces Praktikum. Was ist JSF Aufbau und Techniken HTML vs. JavaServer Faces E-Commerce (WS 2011/12) Fachhochschule Münster FB02 Elektrotechnik und Informatik Referenten: Matthias Wellmeyer, Sven Wermers, Malte Wesker Agenda Einleitung Was ist JSF Aufbau und Techniken

Mehr

Enterprise JavaBeans Überblick

Enterprise JavaBeans Überblick Enterprise JavaBeans Überblick 1. Überblick Java EE 5 und Komponententechnologien 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5. Java Persistence: Entity Manager 6.

Mehr

Java Server Pages 2 und Benutzerdefinierte Tags. Strahil Yordanov

Java Server Pages 2 und Benutzerdefinierte Tags. Strahil Yordanov Java Server Pages 2 und Benutzerdefinierte Tags Strahil Yordanov Überblick Einleitung JSP im Kontext von J2EE JSP2 Benutzerdefinierte Tags Zusammenfassung Einleitung Java Server Pages ist eine Technik

Mehr

Responsive Web Design

Responsive Web Design Responsive Web Design mit APEX Theme 25 Christian Rokitta APEX UserGroup NRW Treffen 20.01.2014 Oracle DB & APEX Entwickler (selbstständig) Deutschland ( 1996) Niederlanden ( 1996) themes4apex: APEX UI

Mehr

Einführung mobile Entwicklungsplattform Neptune Application Designer Fink IT-Solutions Christian Fink, Andreas Hofmann 01.07.2014

Einführung mobile Entwicklungsplattform Neptune Application Designer Fink IT-Solutions Christian Fink, Andreas Hofmann 01.07.2014 Einführung mobile Entwicklungsplattform Neptune Application Designer Fink IT-Solutions Christian Fink, Andreas Hofmann 01.07.2014 Agenda 1 2 3 4 5 Unternehmensvorstellung Enterprise Mobility Mobile Lösungen

Mehr

Automatisches Exploratives Testen von Webanwendungen

Automatisches Exploratives Testen von Webanwendungen Automatisches Exploratives Testen von Webanwendungen Dr. Valentin Dallmeier IT-Themenabend - 2013-10-01 AG Produkte und Dienstleistungen für die Qualitätssicherung von Software. AG Dr. Valentin Dallmeier

Mehr

Immer mehr lebt mobil

Immer mehr lebt mobil Immer mehr lebt mobil mehr als 4.600.000.000 Mobilgeräte breite Verfügbarkeit neuer always-on und Apps Lifestyle 2 Trittsicher auf allen mobilen Pfaden mit HTML5 und jquery Mobile Mike Baird http://flickr.com/photos/mikebaird/482031103/

Mehr

Graphen in Apex von Thomas Hernando. www.syntegris.de

Graphen in Apex von Thomas Hernando. www.syntegris.de Graphen in Apex von Thomas Hernando www.syntegris.de Einleitung FIRMENINFOS Gründung im Jahre 2000 mit Sitz in Neu-Isenburg bei Frankfurt am Main Mehr als 30 Berater Oracle Gold Partner Schwerpunkte liegen

Mehr

WPF. Windows Presentation Foundation. Sven Hubert Student Partner Microsoft Academic Program

WPF. Windows Presentation Foundation. Sven Hubert Student Partner Microsoft Academic Program WPF Windows Presentation Foundation Sven Hubert Student Partner Microsoft Academic Program Sven.Hubert@studentprogram.de 27. Nov. 2006 Agenda WPF ein Überblick WPF mit Visual Studio (Demos) WPF mit Microsoft

Mehr

www.jsf-academy.com JSF goes Mobile Mit JavaServer Faces mobile Welten erschließen Copyright 2013, Andy Bosch, www.jsf-academy.

www.jsf-academy.com JSF goes Mobile Mit JavaServer Faces mobile Welten erschließen Copyright 2013, Andy Bosch, www.jsf-academy. www.jsf-academy.com JSF goes Mobile Mit JavaServer Faces mobile Welten erschließen Copyright 2013, Andy Bosch, www.jsf-academy.de Slide 1 Was habe ich heute vor? Aufzeigen, welche Möglichkeiten JSF bietet,

Mehr

Spring Dynamic Modules for OSGi Service Platforms

Spring Dynamic Modules for OSGi Service Platforms Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick

Mehr

Komponentenorientierte Software-Entwicklung. Seite 1 / 42

Komponentenorientierte Software-Entwicklung. Seite 1 / 42 Seite 1 / 42 Wiederholung Messaging Java Messaging Service (JMS) Pub/Sub P2P Messaging Middleware XMPP-Protokoll Java API for XML-Processing (JAXP) Java API for XML-Binding Webservices / SOA Simple Object

Mehr

Webseiten werden mobil Planung geht vor

Webseiten werden mobil Planung geht vor Webseiten werden mobil Planung geht vor Mobiles Web Aspekte der Planung 20. April 2012 Inhaltliche Schwerpunkte Einordnung mobiler Technologien Besonderheiten mobiler Touchscreen-Geräte Best Practices

Mehr

JSF (JavaServer Faces) Erstellen einer Webseite

JSF (JavaServer Faces) Erstellen einer Webseite Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski JSF (JavaServer Faces) Erstellen einer Webseite Dipl. Inf. Manuel Götz Dipl. Inf.

Mehr

JavaFX auf Mobile. von Stefan Barth und Stefan Heinze

JavaFX auf Mobile. von Stefan Barth und Stefan Heinze von Stefan Barth und Stefan Heinze JavaFX Was ist JavaFX? Desktopanwendungen für Java (Ablösung von Swing) Properties / Bindings Animationen Effekte MultiTouch Media, CSS FXML, CSS Webbrowser... Einsatzmöglichkeiten

Mehr

Mobile Webapps in kürzester Zeit: APEX mobile!

Mobile Webapps in kürzester Zeit: APEX mobile! Mobile Webapps in kürzester Zeit: APEX mobile! Carsten Czarski ORACLE Deutschland B.V. & Co KG Riesstr. 25, 80992 München Schlüsselworte APEX, Mobile Anwendungen, jquery Mobile Einleitung Anwendungen für

Mehr

Ein UI in zwei Welten - Controls in HTML5 und WPF. Timo Korinth

Ein UI in zwei Welten - Controls in HTML5 und WPF. Timo Korinth Ein UI in zwei Welten - Controls in HTML5 und WPF Timo Korinth Timo Korinth Lead Developer HTML5 bei maximago Zuvor.NET / WPF Entwicklung Warum überhaupt HTML5 und WPF? Was bedeutet Control-Entwicklung

Mehr

GUI-Entwicklung 2: Windows Presentation Foundation

GUI-Entwicklung 2: Windows Presentation Foundation GUI-Entwicklung 2: Windows Presentation Foundation Proseminar Objektorientiertes Programmieren mit.net und C# Sandra Müller Institut für Informatik Software & Systems Engineering Agenda 1. Die WPF 2. Einführung

Mehr

Evolution der Web-Entwicklung nach AJAX

Evolution der Web-Entwicklung nach AJAX Evolution der Web-Entwicklung nach AJAX Vortrag BMW Messe, Oktober 2007 Rudolf Lindner, Projektleiter Technologie F&F GmbH Was ist eine WEB-Anwendung? Datenbank Datenbank Server Logik Prozesse Datenbank

Mehr

Android GUI Entwicklung

Android GUI Entwicklung Android GUI Entwicklung Aktuelle Technologien verteilter Java Anwendungen Referent: Stefan Haupt Hello World! Agenda Einführung & Motivation Android Applikationen UI-Komponenten Events Ressourcen Kommunikation

Mehr

Ein mobiler Electronic Program Guide

Ein mobiler Electronic Program Guide Whitepaper Telekommunikation Ein mobiler Electronic Program Guide Ein iphone Prototyp auf Basis von Web-Technologien 2011 SYRACOM AG 1 Einleitung Apps Anwendungen für mobile Geräte sind derzeit in aller

Mehr

Oliver Zeigermann, Stefan Toth embarc GmbH. Flux Facebooks Beitrag zur UI- Architektur der Zukunft

Oliver Zeigermann, Stefan Toth embarc GmbH. Flux Facebooks Beitrag zur UI- Architektur der Zukunft Oliver Zeigermann, Stefan Toth embarc GmbH Flux Facebooks Beitrag zur UI- Architektur der Zukunft UI-Architektur Warum? User Experience wird wichtiger Rich Client Optionen werden rar Es gibt mehrere Philosophien

Mehr

JavaScript Frameworks für Mobile

JavaScript Frameworks für Mobile JavaScript Frameworks für Mobile MoBI Expertenrunde Usability, 1. März 2012 doctima GmbH JavaScript Frameworks für Mobile MoBI 1.3.2012 Edgar Hellfritsch Inhalt Native App-Entwicklung Klassische Web-Entwicklung

Mehr

Barrierefreie, Java-Script gestützte Webapplikationen im praxisnahen Umfeld. Felix Nagel IKT Forum 2012, Linz

Barrierefreie, Java-Script gestützte Webapplikationen im praxisnahen Umfeld. Felix Nagel IKT Forum 2012, Linz Barrierefreie, Java-Script gestützte Webapplikationen im praxisnahen Umfeld Felix Nagel IKT Forum 2012, Linz Zur Person > Dipl. Ing. (FH) Felix Nagel > Webentwickler in Hamburg & Dresden, bei Paints Multimedia

Mehr

Application Note. Anbindung von Kunden-Software an SpiderControl Web Visualisierung

Application Note. Anbindung von Kunden-Software an SpiderControl Web Visualisierung 2015-02-25 1 of 6 Application Note Anbindung von Kunden-Software an SpiderControl Web Visualisierung Version ApplicationNote_AnbindungFremdsoftware /Version Seite 1 / 6 Version Datum Kommentar Autor 0.1

Mehr

Was ist neu in Sage CRM Version 7.0

Was ist neu in Sage CRM Version 7.0 Was ist neu in Sage CRM Version 7.0 Was ist neu in Sage CRM Version 7.0 Überblick über Sage CRM Version 7.0 Unternehmen konzentrieren sich mehr denn je auf Prozesseffizienz und suchen nach Wegen, die Leistungsfähigkeit

Mehr

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik GUI-Programmierung mit Swing

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik GUI-Programmierung mit Swing Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer Programmiertechnik GUI-Programmierung mit Swing AWT und Swing Java enthält zwei Pakete zur Programmierung graphischer Oberflächen. java.awt: Das Abstract

Mehr

Java - Webapplikationen

Java - Webapplikationen Java - Webapplikationen Bestandteile (HTTP,, JSP) Aufbau (Model View Controller) Datenverwaltung (Java Beans, Sessions) Entwicklung (Projektstruktur, Sysdeoplugin für Eclipse) 17. Januar 2006 Jan Hatje

Mehr

TUT1 Javascript-Frameworks zum Erstellen von plattformunabhängigen mobilen Anwendungen

TUT1 Javascript-Frameworks zum Erstellen von plattformunabhängigen mobilen Anwendungen TUT1 Javascript-Frameworks zum Erstellen von plattformunabhängigen mobilen Anwendungen tekom Frühjahrstagung 2012 Karlsruhe am 26.4. 2012 doctima GmbH JavaScript Frameworks für Mobile tekom 26.4.2012 Edgar

Mehr

Business Applika-onen schnell entwickeln JVx Framework - Live!

Business Applika-onen schnell entwickeln JVx Framework - Live! Business Applika-onen schnell entwickeln JVx Framework - Live! - Enterprise Applica-on Framework h&p://www.sibvisions.com/jvx JVx ermöglicht in kürzester Zeit mit wenig Source Code hoch performante professionelle

Mehr

Hochschule Heilbronn Technik Wirtschaft Informatik

Hochschule Heilbronn Technik Wirtschaft Informatik Hochschule Heilbronn Technik Wirtschaft Informatik Studiengang Electronic Business Diplomarbeit "Java-Frameworks für Rich Internet Applications" vorgelegt bei Professor Dr. Michael Gröschel von Tushig

Mehr

Christian Kurz SWT Projekt WS 07/08

Christian Kurz SWT Projekt WS 07/08 Christian Kurz SWT Projekt WS 07/08 1. Allgemeine Aspekte der generativen GUI- Entwicklung 2. Entwicklung mit Hilfe von GUI-Designern 3. Entwicklung mit Hilfe deklarativer GUI- Sprachen 4. Modellgetriebene

Mehr

Apollo Überblick. Klaus Kurz. Manager Business Development. 2007 Adobe Systems Incorporated. All Rights Reserved.

Apollo Überblick. Klaus Kurz. Manager Business Development. 2007 Adobe Systems Incorporated. All Rights Reserved. Apollo Überblick Klaus Kurz Manager Business Development 1 Was ist Apollo? Apollo ist der Codename für eine plattformunabhängige Laufzeitumgebung, entwickelt von Adobe, die es Entwicklern ermöglicht ihre

Mehr

Raber+Märcker Techno Summit 2014 Microsoft Dynamics NAV 2013 R2 Überblick und Hintergründe zu aktuellen Version. Schimon.Mosessohn@microsoft.

Raber+Märcker Techno Summit 2014 Microsoft Dynamics NAV 2013 R2 Überblick und Hintergründe zu aktuellen Version. Schimon.Mosessohn@microsoft. Raber+Märcker Techno Summit 2014 Microsoft Dynamics NAV 2013 R2 Überblick und Hintergründe zu aktuellen Version Schimon.Mosessohn@microsoft.com Herzlich Willkommen 1996 2004 2010 2014 Navision 3.7 Microsoft

Mehr

Web 2.0 Architekturen und Frameworks

Web 2.0 Architekturen und Frameworks Web 2.0 Architekturen und Frameworks codecentric GmbH Mirko Novakovic codecentric GmbH Quality Technische Qualitätssicherung in Software-Projekten mit Fokus auf Performance, Verfügbarkeit und Wartbarkeit

Mehr

Praktikum Datenbanksysteme. Ho Ngoc Duc IFIS - Universität zu Lübeck 01.06.2005

Praktikum Datenbanksysteme. Ho Ngoc Duc IFIS - Universität zu Lübeck 01.06.2005 Praktikum Datenbanksysteme Ho Ngoc Duc IFIS - Universität zu Lübeck 01.06.2005 Tomcat-Installation $JAVA_HOME (z.b. /home/dbp00/j2sdk1.4.2) $CATALINA_HOME (/home/dbp00/jakarta-tomcat-4) Skripte zum Start/Stop:

Mehr

Workshop Java Webentwicklung Tapestry. Ulrich Stärk

Workshop Java Webentwicklung Tapestry. Ulrich Stärk Workshop Java Webentwicklung Tapestry Ulrich Stärk Webanwendungen Antwort im Browser des Benutzers sichtbar Anfrage geht ein Antwort rendern Anfrage an passenden Code weiterleiten 2 Servlets Servlet wird

Mehr

EPO Consulting GmbH. Ihr Partner für HTML5 und SAP UI5 Apps. www.epoconsulting.com. Stand 2015/04. EPO Consulting GmbH - 1 -

EPO Consulting GmbH. Ihr Partner für HTML5 und SAP UI5 Apps. www.epoconsulting.com. Stand 2015/04. EPO Consulting GmbH - 1 - EPO Consulting GmbH Ihr Partner für HTML5 und SAP UI5 Apps www.epoconsulting.com Stand 2015/04 EPO Consulting GmbH - 1 - EPO Mobile Apps für HTML5 und SAP UI5 Apps SAP bietet künftig für alle SAP Produkte

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans Java Enterprise Edition - Überblick Was ist J2EE Java EE? Zunächst mal: Eine Menge von Spezifikationen und Regeln. April 1997: SUN initiiert die Entwicklung

Mehr

Erfahrungen und Erkenntnisse. Klaus Richarz, HBT GmbH

Erfahrungen und Erkenntnisse. Klaus Richarz, HBT GmbH Erfahrungen und Erkenntnisse Klaus Richarz, HBT GmbH Java Enterprise Edition 5.0 JBoss Seam Konsequenzen für Realisierung Qualitätssicherung Build & Deployment Fazit & Empfehlungen JBoss Seam in Projekten,

Mehr

Über mich. Daniel Bälz. Softwareentwickler (inovex GmbH) github.com/dbaelz

Über mich. Daniel Bälz. Softwareentwickler (inovex GmbH) github.com/dbaelz Quo vadis Dart? Über mich Daniel Bälz Softwareentwickler (inovex GmbH) dbaelz.de plus.dbaelz.de github.com/dbaelz Agenda Was Wie Warum Wohin Was ist Dart? Übersicht Einsatzgebiet Client (Browser, CLI)

Mehr

Plattformunabhängige App-Entwicklung - Eine für alle?

Plattformunabhängige App-Entwicklung - Eine für alle? Plattformunabhängige App-Entwicklung - Eine für alle? AGENDA Kurze Firmenpräsentation: M&M Software GmbH Motivation Komponenten der plattformunabhängigen App-Entwicklung Vergleich der App-Arten Beispiele

Mehr

RAP vs. GWT vs. GAE/J + jquery. Web Technologien im Verlgeich

RAP vs. GWT vs. GAE/J + jquery. Web Technologien im Verlgeich RAP vs. GWT vs. GAE/J + jquery Web Technologien im Verlgeich RAP vs GWT vs jquery Dominik Wißkirchen 30. Oktober 2010 Abkürzungen RAP AJAX RWT Rich AJAX Platform Asynchronous JavaScript and XML RAP Widget

Mehr

Web Dynpro / FloorPlanManager / NWBC

Web Dynpro / FloorPlanManager / NWBC Web Dynpro / FloorPlanManager / NWBC Bernd Zehentner TECHNISCHE SAP BERATUNG bze@snapconsult.com snapconsult.com Norbert Prager TECHNISCHE SAP BERATUNG npr@snapconsult.com snapconsult.com 16.06.2014 SNAP

Mehr

Application Designer & Framework unlimited

Application Designer & Framework unlimited NEUE POWER Application Designer & Framework unlimited Geschäftsanwendung 50% schneller erstellen und agil den Markt bedienen. Ideen und Kreativität nutzen Anwendung ohne Code erstellen Hochmoderne Web-Anwendung

Mehr

Techniker Krankenkasse, Hamburg: 10 Jahre produktives Java Enterprise

Techniker Krankenkasse, Hamburg: 10 Jahre produktives Java Enterprise Techniker Krankenkasse, Hamburg: 10 Jahre produktives Java Enterprise SEACON, 22./23.6.2009, Hamburg Ralf Degner, Techniker Krankenkasse Überblick Voraussetzungen, Ziele, Entscheidungen Logische Schichten

Mehr

Integrierte und automatisierte GUI-Tests in Java

Integrierte und automatisierte GUI-Tests in Java Integrierte und automatisierte GUI-Tests in Java Gliederung Die Idee hinter GUI-Tests Herausforderungen und Probleme Techniken Jemmy-Framework Konzeptorientiertes Testen FIT (Framework for Integrated Tests)

Mehr

Verteilte Systeme Hochschule Mannheim

Verteilte Systeme Hochschule Mannheim Verteilte Systeme Hochschule Mannheim Thorsten Reitz, Thomas Zimmermann, Jori Kern, Tobias Schröder, Christoph Reiser, Kay Estelmann Fakultät für Informatik Hochschule Mannheim 8.4.2011 Heute 1 Einleitung

Mehr

Dirk Reinemann Working Student Sales Consulting

Dirk Reinemann Working Student Sales Consulting JDeveloper 12c in 30 Minutes Dirk Reinemann Working Student Sales Consulting Program Agenda 1. Integrated Development Environment 2. Java Development 3. Web Development 4. Team Development 5. Application

Mehr

Legacy Web-Apps mit AngularJS pimpen

Legacy Web-Apps mit AngularJS pimpen Legacy Web-Apps mit AngularJS pimpen Über uns Jan Blankenhorn und Philipp Burgmer Software Developers w11k.com / thecodecampus.de > Esslingen / Stuttgart Schulungen, Projekt-Kickoff Consulting, Softwareentwicklung

Mehr

Rapid Application Development

Rapid Application Development Rapid Application Development mit dem GUI for.net Integrierte Werkzeuge zur Steigerung der Produktivität bei Neuentwicklung und Migration Consultingwerk Ltd. Unabhängiges IT Beratungsunternehmen, Progress

Mehr

Moderne Web-Anwendungen mit Vaadin

Moderne Web-Anwendungen mit Vaadin Moderne Web-Anwendungen mit Vaadin Sebastian.Rothbucher@akquinet.de September 2013 Web-Anwendungen mit Vaadin???

Mehr

Erste Erfahrungen mit NSASJ anhand der OmnivoBase Portierung. September 2013

Erste Erfahrungen mit NSASJ anhand der OmnivoBase Portierung. September 2013 GTUG Java Arbeitskreis Erste Erfahrungen mit NSASJ anhand der OmnivoBase Portierung September 2013 Jürgen Depping CommitWork GmbH Seite 1 Info@CommitWork.de www.commitwork.de Agenda Was ist OmnivoBase?

Mehr

Von SAP R/3 zu mysap ERP und NetWeaver

Von SAP R/3 zu mysap ERP und NetWeaver Von SAP R/3 zu mysap ERP und NetWeaver Bremerhaven 06.05.2006 T4T Bremerhaven 1 Inhaltsverzeichnis 1. Motivation für SAP NetWeaver 2. SAP R/3 mysap ERP und SAP Business Suite 3. Application Platform T4T

Mehr

5. Übung zur Vorlesung Service-orientierte Architekturen

5. Übung zur Vorlesung Service-orientierte Architekturen 5. Übung zur Vorlesung Service-orientierte Architekturen Webservices und WSDL SoSe 2011 Anmerkung Hausaufgabe 03 BPMN Auch hier gilt: Layout! Zu Unterschieden zw. BPMN und eepk Relative Aussagen sind geschickter

Mehr

Handbuch für die Erweiterbarkeit

Handbuch für die Erweiterbarkeit Handbuch für die Erweiterbarkeit Inhalt Pakete für die Erweiterbarkeit... 2 Actions... 2 Items... 2 Itemset... 2 Die UseCaseNewAction... 3 Eigene Shapes... 4 Der Shape Container... 5 User Objects... 6

Mehr

Die mobile Jobsuche für SAP E-Recruiting ist da!

Die mobile Jobsuche für SAP E-Recruiting ist da! Die mobile Jobsuche für SAP E-Recruiting ist da! Smart E-Recruiting Add-ons by Promerit HR + IT Die mobile Jobsuche für SAP E-Recruiting ist da! Smart E-Recruiting Add-ons by Promerit Mit Mobile Search

Mehr

1 Einleitung. 1.1 Caching von Webanwendungen. 1.1.1 Clientseites Caching

1 Einleitung. 1.1 Caching von Webanwendungen. 1.1.1 Clientseites Caching 1.1 Caching von Webanwendungen In den vergangenen Jahren hat sich das Webumfeld sehr verändert. Nicht nur eine zunehmend größere Zahl an Benutzern sondern auch die Anforderungen in Bezug auf dynamischere

Mehr

Web und Mobile Apps Programmieren mit Dart

Web und Mobile Apps Programmieren mit Dart Web und Mobile Apps Programmieren mit Dart Marco Jakob Workshop INFOS 2013 in Kiel 28.09.2013. ZIEL attraktiv aktuell Programmierunterricht wenig Hürden Inhalt Weshalb Web und Mobile im Unterricht? aktuelle

Mehr

ORACLE Business Components for Java (BC4J) Marco Grawunder

ORACLE Business Components for Java (BC4J) Marco Grawunder ORACLE Business Components for Java (BC4J) Marco Grawunder Gliederung 2 Probleme von J2EE/EJB J2EE-Pattern Lösungsansatz: BC4J Architektur einer BC4J-Anwendung Komponenten Entity Objects View Objects Application

Mehr

Middleware. Host. Versuch einer Einleitung. dumme Terminals stellen Ausgaben dar und nehmen Eingaben an

Middleware. Host. Versuch einer Einleitung. dumme Terminals stellen Ausgaben dar und nehmen Eingaben an Middleware Versuch einer Einleitung Host dumme Terminals stellen Ausgaben dar und nehmen Eingaben an Mainframe enthält vollständige Anwendung Typ. COBOL, C Mainframe contd.! Nachteile! Mainframe ist teuer

Mehr

HERZLICH WILLKOMMEN SHAREPOINT 2013 DEEP DIVE - APPS 11.09.2012 IOZ AG 1

HERZLICH WILLKOMMEN SHAREPOINT 2013 DEEP DIVE - APPS 11.09.2012 IOZ AG 1 HERZLICH WILLKOMMEN SHAREPOINT 2013 DEEP DIVE - APPS 11.09.2012 IOZ AG 1 AGENDA Einführung Apps - Einführung Apps Architektur SharePoint-Hosted Apps Cloud-Hosted Apps Ausblick 11.09.2012 IOZ AG 2 ÜBER

Mehr

Übungen zur Android Entwicklung

Übungen zur Android Entwicklung Übungen zur Android Entwicklung Aufgabe 1 Hello World Entwickeln Sie eine Hello World Android Applikation und laden diese auf den Emulator. Leiten Sie hierfür die Klasse android.app.activity ab und entwerfen

Mehr

Der Trusted Capital Cloud Marktplatz

Der Trusted Capital Cloud Marktplatz Der Trusted Capital Cloud Marktplatz Agenda Einleitung durch Herrn Jan Ziesing Der Marktplatz in der Trusted Capital Cloud Technische Aspekte und die Integration des Marktplatzes Demonstration des Marktplatzes

Mehr

Microsoft.NET & IBM System i - Webanwendungen mit AJAX - I Christian Neißl, 28.12.2010

Microsoft.NET & IBM System i - Webanwendungen mit AJAX - I Christian Neißl, 28.12.2010 Microsoft.NET & IBM System i - Webanwendungen mit AJAX - I Christian Neißl, 28.12.2010 Im Jahr 2006 hat ein cleverer Journalist den Namen AJAX erfunden. Der Begriff beschreibt eine damals bereits bekannte

Mehr

Web-Testen mit JUnit und HttpUnit. Kai Schmitz-Hofbauer Lehrstuhl für Software-Technik Ruhr-Universität Bochum

Web-Testen mit JUnit und HttpUnit. Kai Schmitz-Hofbauer Lehrstuhl für Software-Technik Ruhr-Universität Bochum 1 Web-Testen mit JUnit und HttpUnit Kai Schmitz-Hofbauer Lehrstuhl für Software-Technik Ruhr-Universität Bochum 2 Inhalt Entwicklertests in der Praxis Unit-Testing JUnit HttpUnit Praktisches Beispiel Bewertung

Mehr

Smartphone Entwicklung mit Android und Java

Smartphone Entwicklung mit Android und Java Smartphone Entwicklung mit Android und Java predic8 GmbH Moltkestr. 40 53173 Bonn Tel: (0228)5552576-0 www.predic8.de info@predic8.de Was ist Android Offene Plattform für mobile Geräte Software Kompletter

Mehr

Moderne Benutzeroberflächen für SAP Anwendungen

Moderne Benutzeroberflächen für SAP Anwendungen Seite 1 objective partner für SAP Erfahrungen mit dem UI-Development Kit für HTML5 (SAPUI5) - 19.06.2012 Seite 2 Quick Facts objective partner AG Die objective partner AG 1995 gegründet mit Hauptsitz in

Mehr

5 Frontend und GUIs. Anwendungssoftware. Frontend aus entwickelt. Oberfläche muss Teil der Netzwerkintelligenz. Holistic Development

5 Frontend und GUIs. Anwendungssoftware. Frontend aus entwickelt. Oberfläche muss Teil der Netzwerkintelligenz. Holistic Development Kap05.fm Seite 115 Dienstag, 22. April 2003 2:32 14 5 Frontend und GUIs Während früher die Gestaltung der Benutzeroberflächen einer Software als nachrangig eingestuft wurde, spielt die Leistungsfähigkeit

Mehr