mitp Professional Grails 1.2 Das produktive Web-Framework für die Java-Plattform von Graeme Rocher, Jeff Brown, Marc-Oliver Scheele 1.

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "mitp Professional Grails 1.2 Das produktive Web-Framework für die Java-Plattform von Graeme Rocher, Jeff Brown, Marc-Oliver Scheele 1."

Transkript

1 mitp Professional Grails 1.2 Das produktive Web-Framework für die Java-Plattform von Graeme Rocher, Jeff Brown, Marc-Oliver Scheele 1. Auflage mitp/bhv 2010 Verlag C.H. Beck im Internet: ISBN Zu Inhaltsverzeichnis schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG

2 Graeme Rocher Jeff Brown Fachkorrektur von Marc-Oliver Scheele Grails 1.2 Das produktive Web-Framework für die Java-Plattform Insiderwissen aus erster Hand von Grails-Entwicklern Basiswissen, Konzepte, Architektur Internationalisierung, Ajax, GORM, Plugins, Sicherheit, Webservices Einsatz von Spring und Hibernate Einführung in Groovy

3 Kapitel 1 Das Wesen von Grails Einfachheit ist die ultimative Perfektion. Leonardo da Vinci Wollen Sie Grails verstehen, müssen Sie zunächst seine Ziele kennen: die Enterprise-Java- Webentwicklung erheblich zu vereinfachen, die Webentwicklung auf die nächste Abstraktionsebene zu heben, Entwicklern Funktionen zur Verfügung zu stellen, die es auf anderen Plattformen bereits seit Jahren gibt, und dabei die Flexibilität der zugrunde liegenden Technologien in aller Vielfalt und Reife zu bewahren. Schreiben Sie mühselig zahlreiche, lahmlegende XML-Konfigurationsdateien? Quälen Sie sich mit einem Buildsystem, das einfache Änderungen nicht in wenigen Sekunden, sondern in langen Minuten testet? Mit Grails macht die Entwicklung auf der Java-Plattform wieder Spaß. Es reißt Barrieren nieder und gibt Benutzern Zugriff auf APIs, damit Sie sich allein auf Ihre Geschäftsprobleme konzentrieren können. Keine Konfiguration, kein Overhead, sofortiger Turnaround. Wie ist das möglich? Grails nutzt bewährte Konzepte wie etwa Convention over Configuration (CoC, Konvention statt Konfiguration), Don t Repeat Yourself (DRY, Wiederhole dich nicht) und sinnvolle Defaults, die mit der knappen Groovy-Sprache und mehreren domänenspezifischen Sprachen (DSLs) realisiert werden, die Ihnen die Arbeit erleichtern. Als angehender Grails-Entwickler kommt Ihnen dies vielleicht wie Schummelei vor. Sollten Sie nicht mehr Mühe haben? Schließlich können Sie zwei Stunden hartes Körpertraining auch nicht in zwanzig Minuten zusammenquetschen, oder? Wo ist der Haken? Als Entwickler können Sie sicher sein, auf den Schultern von Giganten zu stehen, denen wir die Technologien verdanken, die Grails zugrunde liegen: Spring, Hibernate und natürlich die Java-Plattform. Grails realisiert die besten Funktionen aus Frameworks in dynamischen Sprachen, wie Ruby on Rails, Django oder TurboGears, für die Java Virtual Machine (JVM). 1.1 Einfachheit und Power Grails hebt sich von Konkurrenzprodukten deutlich durch sein Design ab. Grails versucht nicht, das Rad neu zu erfinden, sondern greift auf bewährte Frameworks wie Spring und Hibernate zurück. So kann es arbeitserleichternde Funktionen liefern, ohne dafür Robustheit zu opfern. Grails basiert auf einigen der in ihren Kategorien beliebtesten Open-Source- Technologien: Hibernate: De-facto-Standard für Objekt-relationales Mapping (ORM) in der Java-Welt Spring: Sehr beliebter Inversion of Control (IoC) Container und Wrapper-Framework für Java SiteMesh: Ein robustes und stabiles Layout-Framework 23

4 Kapitel 1 Das Wesen von Grails Tomcat: Ein bewährter und weit verbreiteter Servlet-Container HSQLDB: Eine reine Java-Implementierung eines relationalen Datenbankmanagement-Systems (RDBMS). NEU in 1.2 Hinweis Bis einschließlich Version 1.1 wurde Grails mit dem Jetty-Servlet-Container ausgeliefert. Da die Grails-Anwendungen im Produktivbetrieb jedoch meist auf dem Tomcat-Server laufen, wird nun folgerichtig auch während der Entwicklung standardmäßig auf Tomcat gesetzt. Nutzer, die Jetty für die Entwicklung von Grails-Applikationen bevorzugen, können über folgende Kommandos Tomcat deinstallieren und Jetty wieder als integrierten Servlet-Container zum Standard machen: grails uninstall-plugin tomcat grails install-plugin jetty Die Konzepte von ORM und IoC sind für einige Leser vielleicht neu. ORM ist einfach eine Methode, um Objekte aus der objektorientierten Welt Tabellen einer relationalen Datenbank zuzuordnen. ORM ist zusätzliche Abstraktion über SQL, die es Entwicklern ermöglicht, über ihr Domain-Modell nachzudenken, statt sich mit SQL herumzuschlagen. Mit IoC können Objekte so verknüpft werden, dass ihre Dependencies zur Laufzeit bereitstehen. So müssen etwa persistente Objekte gespeichert oder aus einer Datenquelle abgerufen werden. IoC nimmt dem Entwickler die Aufgabe ab, die erforderliche Datenquelle zu referenzieren. Doch diese Konzepte sind im Moment nicht so wichtig. Sie werden später ausführlicher erläutert. Sie profitieren von Grails, weil es diese Frameworks mit der Groovy-Sprache durch eine weitere Abstraktionsschicht einhüllt. Als Entwickler bemerken Sie nicht, dass Sie eine Springund Hibernate-Anwendung erstellen. Sie werden bestimmt keine einzige Hibernate- oder Spring-XML-Zeile schreiben; aber sie ist da, falls Sie sie brauchen. Abbildung 1.1 zeigt das Verhältnis von Grails zu diesen Frameworks und dem Enterprise Java Stack. Abb. 1.1: Der Grails-Stack 24

5 1.2 Grails, die Plattform 1.2 Grails, die Plattform Haben Sie bei Grails gedacht:»bloß nicht noch ein Web-Framework!«? Das wäre verständlich; denn es gibt Dutzende von Web-Frameworks für Java. Doch Grails ist anders: Es ist nicht nur ein Web-Framework, sondern eine komplette Umgebung. Es ist eine Plattform mit anspruchsvollen Zielen: Es will alle Aufgaben von der View- bis hinunter zur Persistenz- Schicht abdecken. Außerdem will Grails durch sein Plugin-System (siehe Kapitel 12) Probleme lösen helfen, für die es keine vorgefertigten Lösungen bereithält. Mit Grails können Sie Searching, Job Scheduling, Enterprise Messaging, Remoting und mehr implementieren. Der schiere Umfang der von Grails abgedeckten Aufgaben könnte Albträume über endlose Konfigurationssitzungen auslösen. Doch selbst bei seinen Plugins verwendet Grails Convention over Configuration und vernünftige Defaults zur Arbeitserleichterung. Sie sollten Grails nicht nur als ein weiteres Web-Framework, sondern als die Plattform betrachten, auf der Sie Ihre nächste Web-2.0-Anwendung realisieren wollen. 1.3 Leben im Java-Ökosystem Mit Grails können Sie dank Groovy nicht nur Ihre bekannten und beliebten Java-Frameworks nutzen, sondern auch alle Vorteile von Java und der JVM. Keine andere dynamische Sprache für die JVM ist mit Java so integriert wie Groovy. Es arbeitet per Design auf jeder Ebene nahtlos mit Java zusammen. Beginnend mit der Syntax hat es folgende weitere Ähnlichkeiten: Die Groovy-Grammatik ist von der Java-5-Grammatik abgeleitet; deshalb ist der meiste gültige Java-Code zugleich gültiger Groovy-Code. Groovy verwendet dieselben grundlegenden APIs wie Java; deshalb sind Ihre zuverlässigen Javadocs immer noch gültig! Groovy-Objekte sind Java-Objekte. Dieses hat weitreichende Konsequenzen, die vielleicht nicht sofort deutlich werden. So kann etwa ein Groovy-Objekt java.io.serializable implementieren und per Remote Method Invocation (RMI) versendet oder mit Session-Replication Tools in Clustern verpackt werden. Mit dem Joint Compiler von Groovy sind zirkuläre Referenzen zwischen Groovy und Java möglich, ohne dass es zu Problemen beim Kompilieren kommt. Mit Groovy können Sie leicht dieselben Profiling- und Überwachungs-Tools sowie alle existierenden und künftigen Java-Technologien verwenden. Die nahtlose Integration mit Java und die Java-ähnliche Syntax sind die wesentlichen Gründe für den Wirbel, der um Groovy gemacht wurde. Endlich eine Sprache mit ähnlichen Fähigkeiten wie Ruby oder SmallTalk, die direkt in der JVM lief. Das Potenzial, Java-Code mit dynamischem Groovy-Code zu kombinieren, bietet ungeahnte Möglichkeiten. Außerdem können Sie in Groovy statische und dynamische Typen mischen und so bei Bedarf die Sicherheit der statischen Typisierung mit der Leistungsstärke und Flexibilität der dynamischen Typisierung kombinieren. Die starke Integration mit Java macht Groovy immer beliebter, insbesondere bei der Entwicklung von Webanwendungen. Jede Programmierplattform drückt mit unterschiedlichen Idiomen im Wesentlichen dieselben Konzepte aus. In der Java-Welt haben wir Servlets, Filter, Tag-Bibliotheken und Java Server Pages (JSP). Bei einem Wechsel auf eine neue Platt- 25

6 Kapitel 1 Das Wesen von Grails form müssen Sie alle diese Konzepte, ihre APIs und Idiome mehr oder weniger mühsam neu lernen. Neues zu lernen, ist an sich nicht schlecht, doch in der Praxis immer mit Kosten verbunden. Diese können ein größeres Hindernis darstellen, neue Technologien zu übernehmen, die von den Standards oder Konventionen abweichen, die auf der Java-Plattform oder in Ihrem Unternehmen definiert sind. Zusätzlich hat Java Standards für Deployment, Management, Sicherheit, Benennung und mehr. Grails will als Plattform die Essenz von Frameworks wie Rails, Django oder CakePHP mit der reifen Umgebung der Java Enterprise Edition (Java EE) und ihren APIs verknüpfen. Grails gehört jedoch zu den Technologien, die für sich selbst sprechen: Im Moment, wo Sie damit arbeiten, geht Ihnen ein kleines Licht auf. Deshalb wollen wir schnell mit der Beispielanwendung beginnen, die das Buch durchzieht: gtunes. Unser gtunes-beispiel führt Sie schrittweise durch die Entwicklung eines Musikladens im Stile von Apple, Amazon oder Napster. Eine derartige Anwendung bietet vom E-Commerce bis RESTful-APIs und RSSoder Atom-Feeds zahlreiche interessante Möglichkeiten. Wir hoffen, dass Sie dadurch Grails und seine Funktionen gründlich kennen lernen. 1.4 Grails installieren Grails zu installieren, ist fast so einfach wie seine Anwendung, aber Sie müssen mindestens eine Voraussetzung erfüllen. Grails erfordert eine gültige Installation des Java SDK 1.5 oder neuer. Sie bekommen es bei Sun Microsystems unter Nach der Installation des Java SDK müssen Sie die Umgebungsvariable JAVA_HOME auf den Installationsordner setzen und JAVA_HOME/bin zu Ihrer PATH-Variablen hinzufügen. Anmerkung Wenn Sie unter Mac OS X arbeiten, ist Java bereits installiert! Dennoch müssen Sie die JAVA_HOME in Ihrer ~/.profile-datei setzen. Testen Sie Ihre Installation in einer Eingabeaufforderung mit java -version: $java -version Der Output sollte (bis auf die Versionsnummern) dem aus Listing 1.1 ähneln. java version "1.6.0_10" Java(TM) 2 Runtime Environment, Standard Edition (build 1.6.0_10-b05-237) Java HotSpot(TM) Client VM (build 1.6.0_10-119, mixed mode, sharing) Listing 1.1: Java ausführen Wie bei vielen anderen Java-Frameworks wie Apache Tomcat oder Apache Ant erfordert die Installation einige einfache Schritte: Laden Sie Grails von herunter; entpacken Sie die Zip-Datei in ein Verzeichnis Ihrer Wahl; erstellen Sie eine GRAILS_HOME- Variable, die auf dieses Verzeichnis zeigt; fügen Sie das GRAILS_HOME/bin-Verzeichnis in Ihre PATH-Variable ein. Testen Sie die Installation in einer Eingabeaufforderung mit grails: 26

7 1.5 Ihre erste Anwendung erstellen $ grails Wurde Grails erfolgreich installiert, sollte der Output des Befehls dem aus Listing 1.2 ähneln. Welcome to Grails Licensed under Apache Standard License 2.0 Grails home is set to: /Developer/grails-1.2 No Skript name specified. Use 'grails help' for more info or 'grails interactive' to enter interactive mode Listing 1.2: Grails ausführen Listing 1.2 sagt Ihnen, dass Sie durch Eingabe von grails help mehr über Grails erfahren können. Grails zeigt dann u.a. eine Liste der verfügbaren Befehle an. Wenn Sie zusätzlich den Namen eines Befehls angeben, erhalten Sie mehr Informationen über diesen Befehl. Das folgende Beispiel demonstriert dies für den Befehl create-app: $ grails help create-app Listing 1.3 zeigt ein Beispiel für den typischen Output des help-befehls. Usage (optionals marked with *): grails [environment]* create-app grails create-app -- Creates a Grails application for the given name Listing 1.3: Hilfe über einen Befehl Die Befehlszeilenschnittstelle von Grails wurde mit einem anderen Groovy-basierten Projekt namens Gant (Groovy Ant Scripting; erstellt, das das beliebte Apache-Ant-Buildsystem ( einkapselt und eine nahtlose Mischung von Ant Targets und Groovy-Code ermöglicht. Näheres zur Grails-Befehlszeile erfahren Sie in Kapitel Ihre erste Anwendung erstellen In diesem Abschnitt erstellen Sie Ihre erste Grails-Anwendung. Sie heißt gtunes und enthält einen einfachen Controller. Sie führen zu diesem Zweck die folgenden Schritte aus: 1. Erstellen Sie die neue Anwendung mit dem Befehl grails create-app gtunes. 2. Navigieren Sie mit dem Befehl cd gtunes in das gtunes-verzeichnis. 3. Erstellen Sie mit dem Befehl grails create-controller store einen Storefront-Controller. 4. Schreiben Sie Code, um den Benutzer mit einer Meldung zu begrüßen. 5. Testen Sie Ihren Code mit grails test-app. 6. Führen Sie die Anwendung mit grails run-app aus. 27

8 Kapitel 1 Das Wesen von Grails Schritt 1: Die Anwendung erstellen Einfach? Zweifellos! Zunächst führen Sie den Befehl create-app aus, den Sie aus dem vorigen Abschnitt kennen. Geben Sie den Befehl wie folgt in ein Befehlsfenster ein: $ grails create-app Wenn Sie ( ) drücken, fordert Grails Sie auf, einen Projektnamen einzugeben (siehe Listing 1.4). Geben Sie dann gtunes ein und drücken Sie ( ). Alternativ können Sie auch direkt grails create-app gtunes eingeben. Dann führt Grails automatisch die entsprechenden Aktionen aus. Running script /Developer/grails-dev/GRAILS_1_2/scripts/CreateApp_.groovy Environment set to development Application name not specified. Please enter: gtunes Listing 1.4: Eine Anwendung mit dem Befehl create-app erstellen Grails erstellt automatisch eine Grails-Anwendung namens gtunes mit allen erforderlichen Verzeichnissen. Im nächsten Schritt navigieren Sie im Befehlsfenster zu der neuen Anwendung: cd gtunes Abb. 1.2: Die gtunes-anwendungsstruktur An diesem Punkt haben Sie eine neue saubere Grails-Anwendung mit sämtlichen Standardeinstellungen. Abbildung 1.2 zeigt einen Screenshot der Verzeichnisstruktur der Anwendung. Sie werden die Struktur einer Grails-Anwendung und die Aufgaben der verschiedenen Dateien und Verzeichnisse im Laufe dieses Buches näher kennen lernen. Beachten Sie jedoch, dass Grails Verzeichnisse für Controller, Domain-Objekte (Models) und Views erstellt hat. 28

9 1.5 Ihre erste Anwendung erstellen Schritt 2: Einen Controller erstellen Grails ist ein MVC-Framework, das heißt, es arbeitet mit Models, Views und Controllern, um die Concerns (Aufgaben- oder Verantwortungsbereiche) sauber zu trennen. Viele Web- Frameworks trennen mit dem MVC Pattern (Model View Controller Pattern) Benutzerschnittstelle und Geschäftslogik (siehe Wikipedia, Model_View_Controller). Controller sind zentrale Komponenten einer Grails-Anwendung, die den Verkehr der Anfragen und Antworten zwischen den Views und den Models steuern. Weil die gtunes-anwendung einen Online-Musikladen nachbildet, nennen wir unseren Controller store (Laden). Grails hilft Ihnen mit mehreren Befehlen, passende Klassen für die verschiedenen Bereiche einer Grails-Anwendung zu erstellen, etwa mit dem create-controller-befehl einen Controller. Doch Sie müssen diese Befehle nicht verwenden. Wenn Sie die verschiedenen Konzepte in Grails besser kennen, können Sie eine Controller-Klasse genauso leicht mit einem Texteditor Ihrer Wahl oder einer integrierten Entwicklungsumgebung (IDE) erstellen. Hier wollen wir jedoch den create-controller-befehl verwenden. Er hat wie createapp, ein Argument, mit dem Sie den Namen des gewünschten Controllers spezifizieren können: $ grails create-controller store Lehnen Sie sich zurück, während Grails den Rest erledigt. [copy] Copying 1 file to /Developer/grails-dev/gTunes/grails-app/controllers Created Controller for Store [mkdir] Created dir: /Developer/grails-dev/gTunes/grails-app/views/store [copy] Copying 1 file to /Developer/grails-dev/gTunes/test/unit Created ControllerTests for Store Listing 1.5: Einen Controller mit dem Befehl create-controller erstellen Grails erstellt mit dem create-controller-befehl zwei Klassen: einen neuen Controller namens StoreController im grails-app/controllers-verzeichnis und einen zugehörigen Testfall im test/unit-verzeichnis (siehe Abbildung 1.3). Weil Groovy dynamisch arbeitet, sollten Sie in jedem Grails-Projekt eine möglichst umfassende Code Coverage oder Test Coverage (Code- oder Test-Abdeckung) anstreben. Code Coverage ist ein Maß aus dem Software-Testing. Es beschreibt, zu welchem Grad der Sourcecode eines Programms getestet worden ist. Grails generiert zu jedem Controller automatisch einen Test. Dynamische Sprachen wie Groovy, Ruby und Python werden längst nicht so stark vom Compiler unterstützt wie statisch typisierte Sprachen wie etwa Java. Einige Fehler, die in diesen Sprachen zur Compile-Zeit entdeckt werden, bleiben bei dynamischen Sprachen bis zur Laufzeit im Code, darunter auch die Methoden-Resolution. Doch was Sie in dynamischen Sprachen an Compiler-Unterstützung verlieren, wird durch deren Ausdrucksstärke ausgeglichen. 29

10 Kapitel 1 Das Wesen von Grails Abb. 1.3: Der neu erstellte StoreController Leider verführt der Komfort des Compilers Java-Entwickler oft dazu, das Testen ganz zu vergessen. Doch natürlich ist der Compiler kein Ersatz für geeignete Unit-Tests. In diesem Buch werden wir immer wieder die automatisierten Testverfahren demonstrieren, mit denen Sie von Grails unterstützt werden Schritt 3: Eine Meldung ausgeben Zurück zu dem StoreController. Standardmäßig erstellt Grails den Controller und definiert für ihn eine einzige Action namens index. Sie ist per Konvention die Standardaction des Controllers. Listing 1.6 zeigt den StoreController mit seiner standardmäßigen index- Action. class StoreController { def index = {} } Listing 1.6: Die standardmäßige index-action Die index-action scheint nicht viel zu tun; doch per Konvention weist ihre Deklaration Grails an, automatisch eine View namens grails-app/views/store/index.gsp darzustellen. Views werden erst in Kapitel 5 behandelt. Deshalb wollen wir hier zwecks Einfachheit etwas weniger Anspruchsvolles versuchen. Grails Controller verfügen über mehrere implizite Methoden (siehe Kapitel 4), darunter render, eine Mehrzweckmethode, die unter anderem einfache textuelle Antworten darstellen kann. Listing 1.7 zeigt, wie Sie die einfache Meldung»Willkommen im gtunes-store!«ausgeben können. class StoreController { def index = { render "Welcome to the gtunes store!" 30

11 1.5 Ihre erste Anwendung erstellen } } Listing 1.7: Eine Meldung mit der render-methode ausgeben Schritt 4: Den Code testen Der voranstehende Code ist einfach genug, doch selbst der einfachste Code sollte getestet werden. Öffnen Sie die Testsuite StoreControllerTests.groovy, die weiter vorne im Verzeichnis test/unit generiert worden ist. Listing 1.8 zeigt einen Ausschnitt aus dieser Datei. class StoreControllerTests extends grails.test.controllerunittestcase { void testsomething() { } } Listing 1.8: Ausschnitt aus der generierten Testsuite StoreControllerTests.groovy In Grails werden Tests in Unit-Tests und Integrationstests unterteilt. Integrationstests ziehen die gesamte Umgebung einschließlich der Datenbank hoch und laufen deshalb meist langsamer. Außerdem sollen sie normalerweise die Interaktion zwischen mehreren Klassen testen. Deshalb muss Ihre Anwendung kompletter sein, bevor Sie sie ausführen können. Dagegen laufen Unit-Tests schneller, erfordern aber mehr Mocks und Stubs. Stubs sind Klassen, die beim Testen echte Methoden simulieren, indem sie beliebige fest einprogrammierte Werte zurückgeben. Mocks machen im Wesentlichen dasselbe, verfügen aber zusätzlich über»erwartungen«. So kann etwa ein Mock spezifizieren, dass es»erwartet«, dass eine bestimmte Methode wenigstens einmal (oder, falls erforderlich, zehn Mal) aufgerufen wird. Im weiteren Verlauf des Buches wird der Unterschied zwischen Unit-Tests und Integrationstests klarer werden. Um den StoreController in seinem gegenwärtigen Status zu testen, können Sie den Wert der Antwort zusichern, die an den Benutzer gesendet wurde (siehe zum Beispiel Listing 1.9). class StoreControllerTests extends grails.test.controllerunittestcase { void testrenderhomepage() { controller.index() assertequals "Welcome to the gtunes store!", controller.response.contentasstring } } Listing 1.9: Die index-action von StoreController testen Hier wird mit einer eingebauten Testfunktion von Grails der Inhalt des response-objekts geprüft. Bei einem Test wandelt Grails das normale HttpServletResponse-Servlet-Objekt in ein Spring-Objekt namens MockHttpServletResponse um, das über Hilfs-Properties wie contentasstring verfügt, mit denen Sie das Ergebnis eines Aufrufs der render- Methode prüfen können. Dennoch sollten Sie sich noch nicht zu viele Gedanken über diesen Code machen. Das Buch enthält zahlreiche Beispiele, die Sie mit dem Testen in Grails zunehmend vertrauter machen. 31

12 Kapitel 1 Das Wesen von Grails Schritt 5: Die Tests ausführen Mit dem Befehl grails test-app können Sie die Tests ausführen und prüfen, ob alles erwartungsgemäß funktioniert. Der Befehl führt alle Tests in der Anwendung aus und gibt die Ergebnisse im Verzeichnis test/reports aus. Mit dem Befehl grails test-app StoreController können Sie außerdem die StoreControllerTests selektiv ausführen. Listing 1.10 zeigt einen typischen Output einer Ausführung des test-app-befehls Running 1 unit test... Running test StoreControllerTests...PASSED Tests Completed in 703ms Tests passed: 1 Tests failed: Tests passed. View reports in /Developer/grails-dev/gTunes/test/reports Listing 1.10: Tests mit grails test-app ausführen Die Reports werden als XML-, HTML- und einfache Textdateien im Verzeichnis test/ reports gespeichert. Abbildung 1.4 zeigt den generierten HTML-Report in einem Browser er ist definitiv besser lesbar als das XML-Gegenstück! Abb. 1.4: Generierter HTML-Testreport Hinweis Falls Sie in Ihren Tests Logging-Ausgaben produzieren, erscheinen diese standardmäßig nicht im Output auf der Konsole (im JUnit-Report können Sie eingesehen werden). Um die Ausgaben auf der Konsole verfolgen zu können, rufen Sie den Test mit folgenden Parametern auf: NEU in 1.2 grails test-app -echoout -echoerr 32

13 1.5 Ihre erste Anwendung erstellen Schritt 6: Die Anwendung ausführen Nachdem Sie den Code getestet haben, können Sie das Programm mit dem Befehl grails run-app ausführen, der standardmäßig bei Port 8080 einen lokalen Grails-Server startet. Grails verwendet standardmäßig den verbreiteten und robusten Tomcat ( Container als Server, aber natürlich können Sie Grails in jedem Servlet- Container ab Version 2.4 oder neuer deployen. (Deployment wird in Kapitel 11 behandelt.) Führen Sie das Programm wie folgt aus: $ grails run-app Grails startet und zeigt dann einen URL an, über den Sie auf die Grails-Instanz zugreifen können.... Environment set to development Running Grails application Server running. Browse to Listing 1.11: Eine Anwendung mit run-app ausführen Wird ein Bind-Error wie der Folgende angezeigt, liegt wahrscheinlich ein Port-Konflikt vor: Server failed to start: java.net.bindexception: Address already in use Dieser Fehler tritt normalerweise auf, wenn bereits ein weiterer Container, wie etwa Jetty ( an Port 8080 läuft. Sie können dieses Problem umgehen, indem Sie Grails an einem anderen Port ausführen, indem Sie mit dem server.port-argument einen alternativen Wert übergeben: grails -Dserver.port=8087 run-app In diesem Fall wird Grails dann an Port 8087 gestartet. Abgesehen von Port-Konflikten sollte Grails jetzt laufen und bereit sein, Anfragen zu verarbeiten. Öffnen Sie Ihren Lieblings-Browser und navigieren Sie zu dem URL, der Ihnen von Grails run-app-befehl in Listing 1.11 angezeigt wird. Sie sollten zunächst die Grails-Begrüßungsseite sehen (siehe Abbildung 1.5). Der Begrüßungsbildschirm wird standardmäßig mit einer Groovy-Server-Pages-Datei (GSP-Datei; im Verzeichnis grails-app/views/index.gsp) angezeigt, aber Sie können den Speicherort dieser Datei durch URL-Mappings ändern (siehe Kapitel 6). In Abbildung 1.5 werden die verfügbaren Controller angezeigt, darunter der weiter vorne erstellte StoreController. Wenn Sie diesen Link anklicken, wird eine Seite mit der weiter vorne implementierten Meldung»Willkommen im gtunes-store!«angezeigt (siehe Abbildung 1.6). 33

14 Kapitel 1 Das Wesen von Grails Abb. 1.5: Die Standardbegrüßungsseite von Grails Abb. 1.6: StoreController gibt eine Meldung aus. 1.6 Zusammenfassung Erfolg! Ihre erste Grails-Anwendung läuft. In diesem Kapitel haben Sie die ersten Schritte unternommen, um Grails zu lernen, indem Sie Grails installiert und eingerichtet haben. Außerdem haben Sie Ihre erste Grails-Anwendung mit einem einfachen Controller erstellt. Als Nächstes erfahren Sie, wie Sie mit Grails schnell neue Projekte anstoßen können. Danach lernen Sie, wie Sie mit Grails prototypische CRUD-Funktionen (Create, Read, Update, Delete) generieren können, die Sie dann ausbauen können. 34

Groovy on Grails. Informatik-Seminar WS06/07. Alexander Treptow. Groovy on Grails Alexander Treptow (minf2622) 1

Groovy on Grails. Informatik-Seminar WS06/07. Alexander Treptow. Groovy on Grails Alexander Treptow (minf2622) 1 Groovy on Grails Informatik-Seminar WS06/07 Alexander Treptow Groovy on Grails Alexander Treptow (minf2622) 1 Übersicht Groovy on Grails Projektstruktur Controllers Views & Layout Dynamic Tag Libraries

Mehr

Multimedia im Netz. Wintersemester 2011/12. Übung 10. Betreuer: Verantwortlicher Professor: Sebastian Löhmann. Prof. Dr.

Multimedia im Netz. Wintersemester 2011/12. Übung 10. Betreuer: Verantwortlicher Professor: Sebastian Löhmann. Prof. Dr. Multimedia im Netz Wintersemester 2011/12 Übung 10 Betreuer: Verantwortlicher Professor: Sebastian Löhmann Prof. Dr. Heinrich Hussmann Organisatorisches 2 Gesundes neues Jahr 3 Blatt 08 Videoformate im

Mehr

Scala & Lift. Ferenc Lajko 04.02.2010

Scala & Lift. Ferenc Lajko 04.02.2010 Scala & Lift Ferenc Lajko 04.02.2010 Gliederung 1. Scala 1.1. Allgemein 1.2. Merkmale 1.3. Unterschiede zu Java 1.4. Code-Beispiel 1.5. Vorteile zu anderen Sprachen 2. Lift 2.1. Allgemein 2.2. Idee 2.3.

Mehr

Adobe Flex & Grails RIA, REST und XML

Adobe Flex & Grails RIA, REST und XML Adobe Flex & Grails RIA, REST und XML Pascal Schudel Consultant pascal.schudel@trivadis.com Mischa Kölliker Principal Consultant mischa.koelliker@trivadis.com JUGS Zürich, 8. Juli 2010 Basel Bern Lausanne

Mehr

Planung für Organisation und Technik

Planung für Organisation und Technik Salztorgasse 6, A - 1010 Wien, Austria q Planung für Organisation und Technik MOA-VV Installation Bearbeiter: Version: Dokument: Scheuchl Andreas 19.11.10 MOA-VV Installation.doc MOA-VV Inhaltsverzeichnis

Mehr

Installation des GeoShop Redirector für Apache (Stand 14.8.2007) ================================================================

Installation des GeoShop Redirector für Apache (Stand 14.8.2007) ================================================================ Installation des GeoShop Redirector für Apache (Stand 14.8.2007) ================================================================ 0 Überblick ----------- Die Installation des GeoShop Redirector im Apache

Mehr

Ruby on Rails. Thomas Baustert Ralf Wirdemann www.b-simple.de. Alternative zur Web-Entwicklung mit Java? 27.06.2005 www.b-simple.

Ruby on Rails. Thomas Baustert Ralf Wirdemann www.b-simple.de. Alternative zur Web-Entwicklung mit Java? 27.06.2005 www.b-simple. Ruby on Rails Alternative zur Web-Entwicklung mit Java? Thomas Baustert Ralf Wirdemann www.b-simple.de 27.06.2005 www.b-simple.de 1 Überblick Was ist Ruby on Rails? Weblog Demo Rails Komponenten Controller,

Mehr

Anleitung zur Webservice Entwicklung unter Eclipse

Anleitung zur Webservice Entwicklung unter Eclipse Entwicklungsumgebung installieren Sofern Sie nicht an einem Praktikumsrechner arbeiten, müssen Sie ihre Eclipse-Umgebung Webservice-fähig machen. Dazu benötigen Sie die Entwicklungsumgebung Eclipse for

Mehr

Rails Ruby on Rails Ajax on Rails. Clemens H. Cap http://wwwiuk.informatik.uni-rostock.de http://www.internet-prof.de

Rails Ruby on Rails Ajax on Rails. Clemens H. Cap http://wwwiuk.informatik.uni-rostock.de http://www.internet-prof.de Rails Ruby on Rails Ajax on Rails Who is who? Rails Ziel: Framework für Web (2.0) Anwungen Beschleunigung der Entwicklung Konzept des Agilen Programmierens Ruby Interpretierte Sprache Rails Integrationen

Mehr

Lokale Installation von DotNetNuke 4 ohne IIS

Lokale Installation von DotNetNuke 4 ohne IIS Lokale Installation von DotNetNuke 4 ohne IIS ITM GmbH Wankelstr. 14 70563 Stuttgart http://www.itm-consulting.de Benjamin Hermann hermann@itm-consulting.de 12.12.2006 Agenda Benötigte Komponenten Installation

Mehr

Um zu prüfen welche Version auf dem betroffenen Client enthalten ist, gehen Sie bitte wie folgt vor:

Um zu prüfen welche Version auf dem betroffenen Client enthalten ist, gehen Sie bitte wie folgt vor: Client-Installation ec@ros2 ASP-Server 1. Allgemeine Informationen Für den Einsatz von ec@ros2 ist auf den Clients die Software Java Webstart (enthalten im Java Runtime Environment (JRE)) notwendig. Wir

Mehr

Eine Anwendung mit InstantRails 1.7

Eine Anwendung mit InstantRails 1.7 Eine Anwung mit InstantRails 1.7 Beschrieben wird das Anlegen einer einfachen Rails-Anwung, die ohne Datenbank auskommt. Schwerpunktmäßig wird auf den Zusammenhang von Controllern, Views und der zugehörigen

Mehr

Anforderungsgetriebene Webentwicklung mit Grails:

Anforderungsgetriebene Webentwicklung mit Grails: ne mit Grails: und dem 26.01.2012 und dem Gliederung und dem Projektumfeld Agentur mit weniger als 5 Mitarbeitern Schwerpunkte: mit Typo 3 / PHP ios App-Entwicklung für ipad und iphone und dem Folie 1

Mehr

Zeiterfassung-Konnektor Handbuch

Zeiterfassung-Konnektor Handbuch Zeiterfassung-Konnektor Handbuch Inhalt In diesem Handbuch werden Sie den Konnektor kennen sowie verstehen lernen. Es wird beschrieben wie Sie den Konnektor einstellen und wie das System funktioniert,

Mehr

Java Server Faces. Andy Bosch. Das Standard-Framework zum Aufbau webbasierter Anwendungen. An imprint of Pearson Education

Java Server Faces. Andy Bosch. Das Standard-Framework zum Aufbau webbasierter Anwendungen. An imprint of Pearson Education Andy Bosch Java Server Faces Das Standard-Framework zum Aufbau webbasierter Anwendungen An imprint of Pearson Education München Boston San Francisco Harlow, England Don Mills, Ontario Sydney Mexico City

Mehr

Grundlagen der Web-Entwicklung

Grundlagen der Web-Entwicklung Grundlagen der Web-Entwicklung Ruby on Rails Thomas Walter 10.01.2011 Version 1.0 aktuelles aktuelle Browserstatistiken Weltweit, Quelle www.netmarketshare.com 2 aktuelles aktuelle Browserstatistiken Europaweit,

Mehr

Die Installation des GeoShop Redirector für IIS (Internet Information Server, Version 4.0, 5.0 und 6.0) umfasst folgende Teilschritte:

Die Installation des GeoShop Redirector für IIS (Internet Information Server, Version 4.0, 5.0 und 6.0) umfasst folgende Teilschritte: Installation des GeoShop Redirector für IIS (Stand 24.8.2007) ============================================================= 0 Überblick ----------- Die Installation des GeoShop Redirector für IIS (Internet

Mehr

OP-LOG www.op-log.de

OP-LOG www.op-log.de Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server

Mehr

Installation Messerli MySQL auf MAC OS X

Installation Messerli MySQL auf MAC OS X Installation Messerli MySQL auf MAC OS X Einleitung Grundsätzlich wird bei der Installation der Messerli Software auf einem Mac-Server wie folgt vorgegangen: 1. Angepasster RMI-MySQL Server wird auf Mac

Mehr

Benutzerdokumentation Web-Portal

Benutzerdokumentation Web-Portal GRUPP: SWT0822 Benutzerdokumentation Web-Portal Yet Another Reversi Game Martin Gielow, Stephan Mennicke, Daniel Moos, Christine Schröder, Christine Stüve, Christian Sura 05. Mai 2009 Inhalt 1. Einleitung...3

Mehr

Kurzanleitung zu XML2DB

Kurzanleitung zu XML2DB Kurzanleitung zu XML2DB Inhaltsverzeichnis 1. Einleitung...3 2. Entwicklungsumgebung...3 3. Betriebsanleitung...3 3.1 Einrichten der Java Umgebung...3 3.2 Allgemeines zu java und javac...4 3.2.1 Allgemeines

Mehr

Software-Engineering 2. Software-Engineering 2. Entwicklungsumgebungen (IDE) IT works. Klaus Mairon www.mairon-online.de 22.03.

Software-Engineering 2. Software-Engineering 2. Entwicklungsumgebungen (IDE) IT works. Klaus Mairon www.mairon-online.de 22.03. Software-Engineering 2 Entwicklungsumgebungen (IDE) IT works. Klaus Mairon www.mairon-online.de 22.03.2009 1 Entwicklungsumgebungen, CASE-Tools, CASE-Werkzeuge unterstützen den Software-Entwicklungsprozess

Mehr

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand 01.08.2005-08-16. Copyright

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand 01.08.2005-08-16. Copyright Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand 01.08.2005-08-16 Änderungen in Dokumentation und Software sind vorbehalten! Copyright Copyright 2005 COSA GmbH Alle Rechte vorbehalten.

Mehr

INSTALLATION VON INSTANTRAILS 1.7

INSTALLATION VON INSTANTRAILS 1.7 INSTALLATION VON INSTANTRAILS 1.7 InstantRails 1.7 ist ein Paket, das Ruby, Rails, Apache, MySQL und andere Tools, z.b. phpmyadmin in vorkonfigurierter Form enthält. Das Paket muss in einem Verzeichnis

Mehr

Installation von NetBeans inkl. Glassfish Anwendungs-Server

Installation von NetBeans inkl. Glassfish Anwendungs-Server Installation von NetBeans inkl. Glassfish Anwendungs-Server Diese Anleitung führt Sie Schritt für Schritt durch die Einrichtung der Entwicklungsumgebung NetBeans, angefangen beim Download der benötigten

Mehr

ab Redirector-Version 2.14

ab Redirector-Version 2.14 Installation: FilterSurf ab Redirector-Version 2.14 Hier werden nun die Schritte erläutert, die nacheinander zu durchlaufen sind, um einen der zentralen FilterSurf -Server verwenden zu können. Die Installationsschritte

Mehr

Inhalt. Danksagung... 13. Einleitung... 15. 1 Wissenswertes rund um Flex und Java... 19. 2»Get ready!«aufsetzen der Entwicklungsumgebung...

Inhalt. Danksagung... 13. Einleitung... 15. 1 Wissenswertes rund um Flex und Java... 19. 2»Get ready!«aufsetzen der Entwicklungsumgebung... Danksagung...................................................................................... 13 Einleitung......................................................................................... 15

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

CocoaPods Schnelleinstieg

CocoaPods Schnelleinstieg CocoaPods Schnelleinstieg Moritz Haarmann, Software for mobile devices CocoaPods ist das Tool der Wahl, wenn es darum geht, Abhängigkeiten eines Projekts zu verknüpfen. CocoaPods ist kostenlos und quelloffen

Mehr

KURZANLEITUNG DUPLICITY MIT CLOUD OBJECT STORAGE

KURZANLEITUNG DUPLICITY MIT CLOUD OBJECT STORAGE KURZANLEITUNG DUPLICITY MIT CLOUD OBJECT STORAGE Version 1.12 01.07.2014 SEITE _ 2 INHALTSVERZEICHNIS 1. Einleitung...Seite 03 2. Einrichtung des Systems...Seite 04 3. Erzeugen eines Backup-Skripts...Seite

Mehr

Aufbau einer Web 2.0 Community mit Grails

Aufbau einer Web 2.0 Community mit Grails Aufbau einer Web 2.0 Community mit Grails Nicole Hoock esentri consulting GmbH Karlsruhe Schlüsselworte: Web 2.0, Grails, Community, Social Network, Java, Open Source, Rapid Application Development Einleitung

Mehr

Mojolicious. Ich zeige dir jetzt, wie du mit Mojolicious eine Vorlage. Das Mojolicious-Gerüst

Mojolicious. Ich zeige dir jetzt, wie du mit Mojolicious eine Vorlage. Das Mojolicious-Gerüst 6 Ich zeige dir jetzt, wie du mit Mojolicious eine Vorlage für deine Web-Anwendung erstellst, die wir dann im Rest des Buchs immer weiter ausbauen. Sie enthält zu Beginn nur das Notwendige, um sie im Browser

Mehr

Java Frameworks im Vergleich - ADF vs. Grails vs. Spring

Java Frameworks im Vergleich - ADF vs. Grails vs. Spring Java Frameworks im Vergleich - ADF vs. Grails vs. Spring Frank Szilinski esentri software GmbH Karlsruhe Schlüsselworte: ADF, Java, JEE, JSF, Grails, Spring, Open Source, Rapid Application Development

Mehr

Kurzanleitung Installation der Zend Studio Sprachpakete

Kurzanleitung Installation der Zend Studio Sprachpakete Kurzanleitung Installation der Zend Studio Sprachpakete Von Zend Technologies, Inc. www.zend.com Installation Zend Studio Sprachpaket Wenn Ihre regionalen Einstellungen für Deutsch, Französisch oder Italienisch

Mehr

WordPress lokal mit Xaamp installieren

WordPress lokal mit Xaamp installieren WordPress lokal mit Xaamp installieren Hallo und willkommen zu einem weiteren Teil der WordPress Serie, in diesem Teil geht es um die Lokale Installation von WordPress mithilfe von Xaamp. Kurz und knapp

Mehr

Thomas Wagner 2009 (im Rahmen der TA) Installation von MySQL 5.0 und Tomcat 5.5

Thomas Wagner 2009 (im Rahmen der TA) Installation von MySQL 5.0 und Tomcat 5.5 Thomas Wagner 2009 (im Rahmen der TA) Installation von MySQL 5.0 und Tomcat 5.5 Im Folgenden wird die Installation von MySQL 5.0 und Tomcat 5.0 beschrieben. Bei MySQL Server 5.0 handelt es sich um ein

Mehr

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein. Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Bevor Sie den Java-Compiler installieren sollten Sie sich vergewissern, ob er eventuell schon installiert ist. Gehen sie wie folgt

Mehr

JSP JSTL. JEE Vorlesung Teil 6. Ralf Gitzel ralf_gitzel@hotmail.de

JSP JSTL. JEE Vorlesung Teil 6. Ralf Gitzel ralf_gitzel@hotmail.de JSP JSTL JEE Vorlesung Teil 6 Ralf Gitzel ralf_gitzel@hotmail.de 1 Übersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Wiederholung / Vertiefung JSTL Grundlagen JSTL Basisbefehle Templates über JSTL

Mehr

Informatik I Tutorial

Informatik I Tutorial ETH Zürich, D-INFK/D-BAUG Herbstsemester 2015 Dr. Martin Hirt Daniel Jost Informatik I Tutorial Dieses Tutorial hat zum Ziel, die notwendigen Tools auf dem eigenen Computer zu installieren, so dass ihr

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

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

ANT. Kurzvortrag von Manuel Schulze. mschulze@inf.fu-berlin.de

ANT. Kurzvortrag von Manuel Schulze. mschulze@inf.fu-berlin.de ANT Kurzvortrag von Manuel Schulze mschulze@inf.fu-berlin.de ANT Überblick Teilprojekt der Apache Software Foundation [1] ANT ist Opensource Build-Tool ähnlich wie make (?) jedoch voll auf Java zugeschnitten

Mehr

EXPANDIT. ExpandIT Client Control Kurzanleitung. utilities. be prepared speed up go mobile. Stand 14.11.07

EXPANDIT. ExpandIT Client Control Kurzanleitung. utilities. be prepared speed up go mobile. Stand 14.11.07 ExpandIT Client Control Kurzanleitung Stand 14.11.07 Inhaltsverzeichnis ExpandIT Client Control 3 Installationshinweise 3 System-Voraussetzungen 3 Installation 3 Programm starten 6 Programm konfigurieren

Mehr

Office Integration. M. Friedrichs, DEVWARE GmbH 2.0.17

Office Integration. M. Friedrichs, DEVWARE GmbH 2.0.17 Projekt SharePoint Toolbox 2010 Office Integration Dokumententyp Dokumentation Autor Version M. Friedrichs, DEVWARE GmbH 2.0.17 Vom 03.07.2013 Letzte Bearbeitung 03.07.2013 Seite 2 1. EINLEITUNG... 4 2.

Mehr

Beuth Hochschule JDK und TextPad WS14/15, S. 1

Beuth Hochschule JDK und TextPad WS14/15, S. 1 Beuth Hochschule JDK und TextPad WS14/15, S. 1 JDK und TextPad Der TextPad ist ein ziemlich ausgereifter Text-Editor, den man auch als einfache ("noch durchschaubare") Entwicklungsumgebung z.b. für Java-Programme

Mehr

Scripting Framework PowerShell Toolkit Quick-Install a Workplace for Packaging and Test

Scripting Framework PowerShell Toolkit Quick-Install a Workplace for Packaging and Test Scripting Framework PowerShell Toolkit Quick-Install a Workplace for Packaging and Test Windows Client Management AG Alte Haslenstrasse 5 CH-9053 Teufen wincm.ch 1 Quick Install - Scripting Framework Workplace...3

Mehr

Microsoft SharePoint 2013 Designer

Microsoft SharePoint 2013 Designer Microsoft SharePoint 2013 Designer Was ist SharePoint? SharePoint Designer 2013 Vorteile SharePoint Designer Funktionen.Net 4.0 Workflow Infrastruktur Integration von Stages Visuelle Designer Copy & Paste

Mehr

Martin Marinschek- Wolfgang Radinger. Ruby on Rails. Einstieg in die effiziente Webentwicklung. [Tu dpunkt.verlag

Martin Marinschek- Wolfgang Radinger. Ruby on Rails. Einstieg in die effiziente Webentwicklung. [Tu dpunkt.verlag Martin Marinschek- Wolfgang Radinger Ruby on Rails Einstieg in die effiziente Webentwicklung [Tu dpunkt.verlag Inhaltsverzeichnis 1 Ruby on Rails -»Bitte Einsteigen«1 1.1 Web-Entwicklung und Entwicklung

Mehr

Informatives zur CAS genesisworld-administration

Informatives zur CAS genesisworld-administration Informatives zur CAS genesisworld-administration Inhalt dieser Präsentation Loadbalancing mit CAS genesisworld Der CAS Updateservice Einführung in Version x5 Konfigurationsmöglichkeit Sicherheit / Dienstübersicht

Mehr

Grails. Weiterführende Themen zu Internet- und WWW-Technologien. Matthias Springer. 06. Juni 2011

Grails. Weiterführende Themen zu Internet- und WWW-Technologien. Matthias Springer. 06. Juni 2011 Weiterführende Themen zu Internet- und WWW-Technologien 06. Juni 2011 Übersicht 1 Was ist? 2 Übersicht über 3 MVC-Konzept 4 Groovy Beispiele 5 Tutorial: Kleiner Notizblock Web Application Framework Übersicht

Mehr

Typo 3 installieren. Schritt 1: Download von Typo3

Typo 3 installieren. Schritt 1: Download von Typo3 Typo 3 installieren Bevor Sie Typo3 installieren, müssen Sie folgende Informationen beachten: Typo3 benötigt eine leere Datenbank. Mit Ihrem Abonnement verfügen Sie über eine einzige Datenbank. Sie können

Mehr

Bibliographix installieren

Bibliographix installieren Bibliographix installieren Version 10.8.3 Inhalt Inhalt... 1 Systemvoraussetzungen... 1 Download... 2 Installation der Software... 2 Installation unter Windows... 2 Installation unter Mac OS X... 3 Installation

Mehr

Testen von webbasierten Benutzeroberflächen

Testen von webbasierten Benutzeroberflächen Studiengruppe: IB6C Email: qasmi@hm.edu Dozent: Michael Theis 1 Agenda: Das eine basierte Testumgebung 2 Wer kennt diese Situationen nicht? =>Typische Fehler bei Webanwendungen! 3 Fehler wie diese sollten

Mehr

Installationsanweisung JavaHelp

Installationsanweisung JavaHelp Systemvoraussetzungen schaffen 1 Installationsanweisung JavaHelp für Viele Hilfe-Autoren haben jedoch Probleme, JavaHelp in einer gut funktionierenden Weise lauffähig zu bekommen, zumal versionsspezifische

Mehr

Update Messerli MySQL auf Linux

Update Messerli MySQL auf Linux Update Messerli MySQL auf Linux Einleitung Grundsätzlich wird beim Update der Messerli Software auf einem Linux-Server wie folgt vorgegangen: 1. Vorhandener RMI-MySQL Server wird auf Linux aktualisiert

Mehr

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt Inhaltsverzeichnis Aufgabe... 1 Allgemein... 1 Active Directory... 1 Konfiguration... 2 Benutzer erstellen... 3 Eigenes Verzeichnis erstellen... 3 Benutzerkonto erstellen... 3 Profil einrichten... 5 Berechtigungen

Mehr

Liste V Enterprise JavaBeans

Liste V Enterprise JavaBeans Liste V Enterprise JavaBeans Fachhochschule Wiesbaden, FB Design Informatik Medien Studiengang Allgemeine Informatik Vorlesung zur Vertiefungslehrveranstaltung Spezielle Methoden der Softwaretechnik SS

Mehr

Einleitung. Funktion. Panzenböck Phillipp. Download 13.05.2003. Installation. Testen. Konfiguration

Einleitung. Funktion. Panzenböck Phillipp. Download 13.05.2003. Installation. Testen. Konfiguration Panzenböck Phillipp 13.05.2003 Der Applikationsserver wird von einer in Schweden ansässigen Firma namens Ironflare entwickelt Orion ist das einzige Produkt dieser Firma Der Orionserver ist komplett in

Mehr

Vom lokalen Build zum Deployment

Vom lokalen Build zum Deployment Vom lokalen Build zum Deployment International PHP Conference Manuel Pichler 12.10.2011 Vom lokalen Build zum Deployment 1 / 36 Über mich Diplominformatiker Mehr als 10 Jahre Erfahrung im PHP-Umfeld Autor

Mehr

Installation von Wordpress

Installation von Wordpress Installation von Wordpress Wordpress (http://wordpress-deutschland.org/) ist ein sehr bekanntes Blog-Script, welches Ihnen ermöglicht, schnell und einfach ein Blog auf Ihrem Webspace zu installieren. Sie

Mehr

Groovy und CouchDB. Ein traumhaftes Paar. Thomas Westphal

Groovy und CouchDB. Ein traumhaftes Paar. Thomas Westphal Groovy und CouchDB Ein traumhaftes Paar Thomas Westphal 18.04.2011 Herzlich Willkommen Thomas Westphal Software Engineer @ adesso AG Projekte, Beratung, Schulung www.adesso.de thomas.westphal@adesso.de

Mehr

News. Sun & Java. Schwerpunktthema: Deutsche ORACLE-Anwendergruppe e. V. Sonderdruck für die exensio GmbH. www.doag.org

News. Sun & Java. Schwerpunktthema: Deutsche ORACLE-Anwendergruppe e. V. Sonderdruck für die exensio GmbH. www.doag.org Deutsche ORACLE-Anwendergruppe e. V. Schwerpunktthema: Sun & Java News Die Zeitschrift der DOAG-Mitglieder www.doag.org Sonderdruck für die exensio GmbH ISSN 09 36-0360 Web-Applikationen mit Grails und

Mehr

Web-Anwendungsentwicklung mit dem Delivery Server

Web-Anwendungsentwicklung mit dem Delivery Server Web-Anwendungsentwicklung mit dem Delivery Server Java-Framework auf Basis der Open API Bernfried Howe, Webertise Consulting GmbH WEBertise Consulting Dipl. Informatiker (Wirtschaftsinformatik) 2001-2010

Mehr

5.1 Bestehende Projekte bearbeiten 79 5.2 Neue Projekte erstellen 85

5.1 Bestehende Projekte bearbeiten 79 5.2 Neue Projekte erstellen 85 Projekte per DOM bearbeiten KAPITEL 5 5.1 Bestehende Projekte bearbeiten 79 5.2 Neue Projekte erstellen 85 Bisher haben wir uns angesehen, wie List & Label mit Ihren Daten bekannt gemacht werden kann und

Mehr

Aufbau einer Web 2.0 Community mit Grails. DOAG Konferenz + Ausstellung 2010 Nicole Hoock, esentri consulting GmbH

Aufbau einer Web 2.0 Community mit Grails. DOAG Konferenz + Ausstellung 2010 Nicole Hoock, esentri consulting GmbH Aufbau einer Web 2.0 Community mit Grails DOAG Konferenz + Ausstellung 2010 Nicole Hoock, esentri consulting GmbH Agenda Firmenvorstellung Einführung ins Thema Grundlagen Live-Vorführung Ausblick & Erfahrungswerte

Mehr

Software-Engineering und Optimierungsanwendungen in der Thermodynamik

Software-Engineering und Optimierungsanwendungen in der Thermodynamik Software-Engineering und Optimierungsanwendungen in der Thermodynamik Software-Engineering 5 Programmentwicklung und Debuggen mit IDE und CASE-Tools Übungen Prof. Dr. Rolf Dornberger OPTSWE_SWE: 5 Programmentwicklung

Mehr

SiriusDataCS Installationsanleitung. SiriusDataCS Installation. 11.11.2013 Seite 1 / 12

SiriusDataCS Installationsanleitung. SiriusDataCS Installation. 11.11.2013 Seite 1 / 12 SiriusDataCS Installation 11.11.2013 Seite 1 / 12 Inhalt I. INSTALLATIONSSZENARIEN... 3 II. SYSTEMVORAUSETZUNGEN... 4 1. INSTALLATION MICROSOFT SQL DATENBANK... 5 1.1. ANDERE VERSIONEN DES MICROSOFT SQL

Mehr

HINWEISE ZUR ARBEIT IM LABOR

HINWEISE ZUR ARBEIT IM LABOR HINWEISE ZUR ARBEIT IM LABOR MIT GLASSFISH UND DERBY UNTER NETBEANS 1. Grundsätzliches: Auch weiterhin arbeiten Sie im SWE-Labor remote, d.h. auf einem Server. Ihre Entwicklungsumgebung Netbeans ist dort

Mehr

Software-Engineering Grundlagen des Software-Engineering

Software-Engineering Grundlagen des Software-Engineering Software-Engineering Grundlagen des Software-Engineering 7.2 Programmentwicklung und Debuggen mit IDE und CASE-Tools Übungen Prof. Dr. Rolf Dornberger SWE: 7.2 Programmentwicklung und Debuggen mit IDE

Mehr

Normfall 7.2. Whitepaper. Erstellen eines Normfall Projektspeichers auf Basis einer vorhandenen Installation von:

Normfall 7.2. Whitepaper. Erstellen eines Normfall Projektspeichers auf Basis einer vorhandenen Installation von: Normfall 7.2 Whitepaper Erstellen eines Normfall Projektspeichers auf Basis einer vorhandenen Installation von: Microsoft SQL Server 2008 R2/2012/2014 2014 Normfall GmbH Alle Rechte vorbehalten. Vorbemerkungen

Mehr

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv Roboter programmieren mit NXC für Lego Mindstorms NXT 1. Auflage Roboter programmieren mit NXC für Lego Mindstorms NXT schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv Verlag

Mehr

Webservicetest mit soapui

Webservicetest mit soapui Mentana Claimsoft GmbH NL Berlin/Brandenburg Seite 1 Webservicetest mit soapui Version 1.2 Mentana Claimsoft GmbH NL Berlin/Brandenburg Seite 2 Inhaltsverzeichnis 1 Übersicht... 3 1.1 Dokumentenverlauf...

Mehr

Lernjournal Auftrag 1

Lernjournal Auftrag 1 Lernjournal Auftrag 1 Autor: Ramon Schenk Modul: M151 Datenbanken in Webauftritt einbinden Klasse: INF12.5H Datum: 29/01/15 XAMPP- Entwicklungsumgebung installieren Inhalt 1. Tätigkeiten... 2 2. Einrichten

Mehr

Literatur und Links. Webtechnologien WS 2015/16 Teil 1/Entwicklung

Literatur und Links. Webtechnologien WS 2015/16 Teil 1/Entwicklung Literatur und Links [1-1] Seidler, Kai; Vogelsang, Kay: Das XAMPP Handbuch. Addison-Wesley, 2006 [1-2] http://www.apachefriends.org/download.html http://sourceforge.net/projects/xampp/files/ [1-3] http://aktuell.de.selfhtml.org/extras/download.shtml

Mehr

Live Update (Auto Update)

Live Update (Auto Update) Live Update (Auto Update) Mit der Version 44.20.00 wurde moveit@iss+ um die Funktion des Live Updates (in anderen Programmen auch als Auto Update bekannt) für Programm Updates erweitert. Damit Sie auch

Mehr

Kurzanleitung - XVA Provider unter Mac OSX 10

Kurzanleitung - XVA Provider unter Mac OSX 10 Kurzanleitung - XVA Provider unter Mac OSX 10 Installation und Bedienung- Inhalt Allgemeine Hinweise:... 1 Kapitel 1 Installation und Konfiguration... 2 Schritt 1: Java SE Development Kit 6 installieren:...

Mehr

AnNoText. AnNoText Online-Update. Copyright Wolters Kluwer Deutschland GmbH

AnNoText. AnNoText Online-Update. Copyright Wolters Kluwer Deutschland GmbH Copyright Wolters Kluwer Deutschland GmbH AnNoText AnNoText Online-Update Wolters Kluwer Deutschland GmbH Software + Services Legal Robert-Bosch-Straße 6 D-50354 Hürth Telefon (02 21) 9 43 73-6000 Telefax

Mehr

Informatik 1 Tutorial

Informatik 1 Tutorial ETH Zürich, D-INFK/D-BAUG Herbstsemester 2014 Dr. Martin Hirt Christian Badertscher Informatik 1 Tutorial Dieses Tutorial hat zum Ziel, die notwendigen Tools auf dem eigenen Computer zu installieren, so

Mehr

Serverprovisioning in einer dynamischen Infrastruktur Systemmanagement LinuxTag 2012

Serverprovisioning in einer dynamischen Infrastruktur Systemmanagement LinuxTag 2012 Serverprovisioning in einer dynamischen Infrastruktur Systemmanagement LinuxTag 2012 vorgestellt am 23.05.2012 Alexander Pacnik inovex GmbH Wir nutzen Technologien, um unsere Kunden glücklich zu machen.

Mehr

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2.1 Die Einrichtung der Benutzeroberfläche Das Einrichten einer Android-Eclipse-Entwicklungsumgebung zur Android-Entwicklung ist grundsätzlich nicht

Mehr

DRESDEN, 08.10.2009 CHRISTIAN.KNAUER@INF.TU-DRESEDEN.DE

DRESDEN, 08.10.2009 CHRISTIAN.KNAUER@INF.TU-DRESEDEN.DE DOKUMENTATION MAAS - MONITORING AS A SERVICE DRESDEN, 08.10.2009 CHRISTIAN.KNAUER@INF.TU-DRESEDEN.DE Dokumentation MaaS - Monitoring as a Service Inhalt 1. MaaS - Monitoring as Service... 3 1.1 Einleitung...

Mehr

4D Server v12 64-bit Version BETA VERSION

4D Server v12 64-bit Version BETA VERSION 4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und

Mehr

Skalierbare Webanwendungen mit Python und Google App Engine

Skalierbare Webanwendungen mit Python und Google App Engine Skalierbare Webanwendungen mit Python und Google App Engine Oliver Albers 03. Juli 2008 1/32 Einführung Worum geht es? Pro und Contra Technik Genereller Aufbau Anwendungskonfiguration Verarbeitung von

Mehr

Konfigurationslanleitung für J2EE und Eclipse im KBS-Pool

Konfigurationslanleitung für J2EE und Eclipse im KBS-Pool Konfigurationslanleitung für J2EE und Eclipse im KBS-Pool JBoss vorbereiten Wir haben ein zip-archiv mit JBoss 4.0.5 in /opt/jboss-4.0.5.zip hinterlegt. Entpacken Sie dieses in ihrem Homeverzeichnis an

Mehr

IBM SPSS Data Access Pack Installationsanweisung für Windows

IBM SPSS Data Access Pack Installationsanweisung für Windows IBM SPSS Data Access Pack Installationsanweisung für Windows Inhaltsverzeichnis Kapitel 1. Übersicht.......... 1 Einführung............... 1 Bereitstellen einer Datenzugriffstechnologie.... 1 ODBC-Datenquellen...........

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

Fachhochschule Bonn-Rhein-Sieg. SecureAware unter Linux

Fachhochschule Bonn-Rhein-Sieg. SecureAware unter Linux Fachhochschule Bonn-Rhein-Sieg Studiengang Business Information Systems Hausarbeit zur Erlangung des Leistungsnachweises in der Lehreinheit Management der Informationssicherheit und technischer Datenschutz

Mehr

Information rund um den Begriff Patch für WINLine-Anwender. SMC InformationsTechnologien AG Meraner Str. 43 86165 Augsburg

Information rund um den Begriff Patch für WINLine-Anwender. SMC InformationsTechnologien AG Meraner Str. 43 86165 Augsburg Information rund um den Begriff Patch für WINLine-Anwender SMC InformationsTechnologien AG Meraner Str. 43 86165 Augsburg Inhaltsverzeichnis: 1. Allgemeine Informationen zu dem Begriff Patch 2. WINLine

Mehr

ELOoffice. ELOoffice und Terminal Server. Inhaltsverzeichnis. In dieser Unterrichtseinheit lernen Sie. Unit. Dauer dieser Unit 25 Minuten

ELOoffice. ELOoffice und Terminal Server. Inhaltsverzeichnis. In dieser Unterrichtseinheit lernen Sie. Unit. Dauer dieser Unit 25 Minuten Dauer dieser Unit 25 Minuten Unit In dieser Unterrichtseinheit lernen Sie Die ELOoffice Lizensierung von der PC-bezogenen Lizenz auf eine anwenderbezogene Lizenz umzuschalten Inhaltsverzeichnis Inhaltsverzeichnis...1

Mehr

CADEMIA: Einrichtung Ihres Computers unter Linux mit Oracle-Java

CADEMIA: Einrichtung Ihres Computers unter Linux mit Oracle-Java CADEMIA: Einrichtung Ihres Computers unter Linux mit Oracle-Java Stand: 21.02.2015 Java-Plattform: Auf Ihrem Computer muss die Java-Plattform, Standard-Edition der Version 7 (Java SE 7) oder höher installiert

Mehr

Installationsanleitung Microsoft Dynamics NAV Classic Datenbank-Server

Installationsanleitung Microsoft Dynamics NAV Classic Datenbank-Server Installationsanleitung Microsoft Dynamics NAV Classic Datenbank-Server Diese Anleitung beschreibt die Installation eines oder mehrerer Microsoft Dynamics NAV 2009 Classic Datenbank-Server im Unterrichtsnetz.

Mehr

Einrichten des IIS für VDF WebApp. Einrichten des IIS (Internet Information Server) zur Verwendung von Visual DataFlex Web Applications

Einrichten des IIS für VDF WebApp. Einrichten des IIS (Internet Information Server) zur Verwendung von Visual DataFlex Web Applications Einrichten des IIS (Internet Information Server) zur Verwendung von Visual DataFlex Web Applications Windows 8 Systemsteuerung > Programme > Windows Features aktivieren / deaktivieren > Im Verzeichnisbaum

Mehr

Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express

Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express Howto Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express Peter Bitterlich Markus Langer 12. Oktober 2012 Zusammenfassung Dieses Dokument erklärt Schritt für Schritt die Installation

Mehr

juliteccrm Dokumentation

juliteccrm Dokumentation Customer Relationship Management für kleine und mittelständische Unternehmen juliteccrm Dokumentation 2012, julitec GmbH Page 1 of 12 julitec GmbH Flößaustraße 22 a 90763 Fürth Telefon: +49 911 979070-0

Mehr

Aktivierung der Produktschlüssel. in CABAReT-Produkten am Beispiel CABAReT Stage

Aktivierung der Produktschlüssel. in CABAReT-Produkten am Beispiel CABAReT Stage Aktivierung der Produktschlüssel in CABAReT-Produkten am Beispiel CABAReT Stage Kritik, Kommentare & Korrekturen Wir sind ständig bemüht, unsere Dokumentation zu optimieren und Ihren Bedürfnissen anzupassen.

Mehr

Bridging the Gap between the Enterprise and You. Who s the JBoss now?

Bridging the Gap between the Enterprise and You. Who s the JBoss now? or Who s the JBoss now? Patrick Hof (patrick.hof@redteam-pentesting.de) Jens Liebchen (jens.liebchen@redteam-pentesting.de) RedTeam Pentesting GmbH http://www.redteam-pentesting.de 16. DFN-Cert Workshop

Mehr

HILFE Datei. UPC Online Backup

HILFE Datei. UPC Online Backup HILFE Datei UPC Online Backup Inhalt Login Screen......? Welcome Screen:......? Manage Files Screen:...? Fotoalbum Screen:.........? Online backup Client Screen...? Frequently Asked Questions (FAQ s)...?

Mehr

Literatur und Links. Webtechnologien SS 2015 Teil 1/Entwicklung

Literatur und Links. Webtechnologien SS 2015 Teil 1/Entwicklung Literatur und Links [1-1] Seidler, Kai; Vogelsang, Kay: Das XAMPP Handbuch. Addison-Wesley, 2006 [1-2] http://www.apachefriends.org/download.html http://sourceforge.net/projects/xampp/files/ [1-3] http://aktuell.de.selfhtml.org/extras/download.shtml

Mehr

Artikel Test-Organisation in grösseren Magento(1)-Projekten

Artikel Test-Organisation in grösseren Magento(1)-Projekten Artikel Test-Organisation in grösseren Magento(1)-Projekten Ein Tipp von unserem Entwickler Claudio Kressibucher Köln/Bergisch Gladbach Münster Aachen Kapstadt/Südafrika www.kennziffer.com GmbH Friedrich-Ebert-Straße

Mehr

GameGrid mit BlueJ Seite 1

GameGrid mit BlueJ Seite 1 GameGrid mit BlueJ Seite 1 GameGrid mit BlueJ BlueJ ist eine Java-Entwicklungsumgebung mit einer einfachen Benutzeroberfläche. Dem Benutzer stehen ein einfacher Texteditor mit Syntaxhervorhebung und ein

Mehr