Monthly Archives: Juni 2009

Eclipse Galileo und SVN

Heute mal was ganz kurzes von mir :-)
Etwas holprig war doch noch die SVN Integration in Eclipse Ganymede. Für Galileo gilt dies nicht mehr. Der Kürzeste Weg zu SVN:

  1. Help > Install New Software… > Galileo – http://download.eclipse.org/technology/subversive/0.7/update-site/ > Collaboration > Subversive SVN Team Provider (Incubation)
  2. Help > Install New Software… > Add > Polarion – http://community.polarion.com/projects/subversive/download/eclipse/2.0/galileo-site/
  3. > Subversive SVN Connectors > Subversive SVN Connectors
  4. > Subversive SVN Connectors > JavaHL 1.6.0 Win32 Binaries (Optional)

Nicht durch das “Optional” verwirren lassen. Im Schritt 1 bekommen wir die SVN Integration für Eclipse. Im Schritt 2 legen wir Polarion als Update site an. Im Schritt 3 Installieren wir das Interface von Polarion zu Eclipse SVN und im Schritt 4 wählen wir noch eine der möglichen Implementierungen.

Fabian Lange

 

JavaOne 2009: James Goslings Toy Show

Toy Show

Toy Show

Wie jedes Jahr auf der JavaOne präsentierte James Gosling, Erfinder von Java und Sun Fellow, am letzten Tag die Toy Show, auf der Personen und Unternehmen für herausragende Tätigkeiten im Java Umfeld mit dem Duke’s Choice Award geehrt wurden.

Virtuelle Leinwand

Virtuelle Leinwand

Neben vielen Präsentationen mit Show-Effekt wie ein Lincoln Continental von 1959, welcher wahlweise mit Biodiesel oder Elektromotor angetrieben und mit Java-Technologie gesteuert wird oder einer virtuellen Leinwand auf Basis einer Wii-Konsole und JavaFX, auf der man freihand Bilder auf jeder beliebigen Fläche durch Handbewegungen erstellen kann, gab es auch die “leisen” aber wichtigen Entwicklungen wie die Bildanalyse für die medizinische Diagnose.

Bildanalyse

Bildanalyse

Dabei werden tomographische Bilder mit hochauflösenden Referenzbildern (300 Megapixel und mehr) bekannter Erkrankungen verglichen, um so eine präzisere Diagnose erstellen zu können. Dadurch können z.B. Krebserkrankungen frühzeitiger erkannt und Fehldiagnosen deutlich minimiert werden. Das System basiert auf Java EE und bei der Livedemonstration konnte ein Durchsatz von 90.000 Bildern in 0,3 Sekunden erzielt werden.

Golden Gate Bridge

Golden Gate Bridge

Leider bedeutete die Toy Show auch zugleich, dass wir am letzten Tag der JavaOne angekommen waren und eine tolle Konferenz in der faszinierenden Stadt San Francisco zu Ende ging. So fuhren wir am Abend zurück nach Solingen, im Handgepäck das neue Wissen rund um die angesagtesten Java-Technologien sowie den vielen Eindrücken aus San Francisco.

Rolf Felker

 

Simplium – Hilfe für Selenium

Einmal im Monat findet bei codecentric für alle Mitarbeiter ein Freitagsmeeting statt. Getreu nach dem Motto „Von Kollegen für Kollegen“ präsentieren wir uns gegenseitig interessante Themen aus unseren jeweiligen Fachgebieten und stellen neue Technologien vor. Ein Themenblock in unserem nächsten Meeting wird eine „Agile Testing Session“ sein. Für die Vorbereitung meines Beitrags habe ich mich nach einiger Zeit wieder einmal mit Selenium beschäftigt und bin dabei auf ein kleines nützliches Framework namens „Simplium – simple test framework for Selenium” gestoßen, welches ich im Folgenden kurz vorstellen möchte.

Wer bereits mit Selenium gearbeitet hat, kennt sicherlich seine Vorzüge. Man kann Testfälle mit den Firefox-Plugin Selenium IDE aufzeichnen und direkt in einen JUnit-Testcase exportieren. Über Selenium Remote Control kann man diese JUnit-Testcases dann z.B. aus der IDE oder aus einem Continous-Integration-Prozess ausführen.

Leider sind die Syntax der mitgelieferten Basisklasse für Testfälle sowie der Output aus Selenium IDE eher im JUnit 3-Format. Möchte man also JUnit 4 mit Annotations nutzen, muss der Entwickler selbst Hand anlegen. Zusätzlich möchte man vielleicht seine Testfälle gegen mehrere Testumgebungen oder unterschiedliche Browser laufen lassen, ohne alle Testfälle anpassen zu müssen. Aus diesen Gründen beginnen wahrscheinlich viele Entwickler zunächst mit der Erstellung eigener Basisklassen für ihre Selenium-Tests.

Die meisten der beschriebenen Probleme werden jedoch von dem schlanken Framework Simplium gelöst. Simplium bietet folgende Features

  • Konfiguration verschiedener Umgebungen: Selenium-Server-URL und Port sowie URL der zu testenden Anwendung lassen sich zu symbolischen Namen (development, test, production) definieren. Die gewünschte Umgebung wird beim Ausführen der Tests über eine System-Property ausgewählt.
  • Konfiguration der verwendeten Browser: Je nach gewählter Umgebung können die verwendeten Browser konfiguriert werden, z.B. nur Firefox bei development, Firefox und IE in der Test-Umgebung
  • JUnit 4 Unterstützung mit Annotations: Durch einen eigenen JUnit 4 TestRunner können Annotations genutzt werden. Gleichzeitig wird über den Testrunner auch die sehr nützliche Funktionalität der Screenshot-Erstellung bei Testfehlern für JUnit 4 bereitgestellt.
  • Hilfreiche zusätzliche Annotations: Über die @Delay-Annotation lässt sich z.B. eine Verzögerung zwischen jedem Selenium-Command konfigurieren. Dies kann beim Debuggen sehr nützlich sein. Über @RunOnlyIn* kann man einige Testfälle auf bestimmte Umgebungen einschränken. Über @Timeout lässt sich generell der Timeout für Open- und WaitFor-Commands festlegen.
  • Startet man Selenium-Testfälle aus der IDE muss vorher ein Selenium-Server gestartet werden. Dies wird auch von Simplium übernommen.

Alles in Allem ist Simplium für mich ein sehr nützliches, kleines Addon für Selenium. Vielleicht übernimmt OpenQA ja einige Ansätze in die anstehende Version 2.0 von Selenium.

Daniel Reuter

 

JavaOne 2009: codecentric meets dynaTrace

dynaTrace LogoNeben den bekannten Größen der Java-Szene ist auch unser Partner dynaTrace mit einem Stand auf der diesjährigen JavaOne vertreten. Dort hatten wir die Gelegenheit, uns mit Alois Reitbauer über die kommenden Features in dynaTrace 3.1 zu unterhalten, u. A. die Unterstützung von Continuous Integration Prozessen. Begeisterungsstürme löste unser Besuch am Stand auch bei Michael Killoran (VP Sales North America) aus, der schon viel von den codecentric Erfolgen mit dynaTrace Produkten auf dem deutschen Markt gehört hat.

dynaTrace PartySelbstverständlich wurden wir zur abendlichen dynaTrace Cocktailparty im B’s eingeladen und konnten dort weitere der aus Linz und Boston angereisten DynaTracer näher kennen lernen. Mit dem CEO John Van Siclen unterhielten wir uns über unsere Eindrücke von der JavaOne und unsere Erfahrungen im Umgang mit dynaTrace Produkten undiPod Touch erhielten zusätzlich Tipps für Sightseeing-Locations in und um San Francisco. Ein Wochenendtrip in die nördlichen Regionen (auch bekannt als “Wine Country”) ist bereits verabredet!

Als krönender Abschluss hat sich der Abend auch noch für die Ehefrau unseres Kollegen Nick gelohnt: Bei der Verlosung eines iPod Touch war sie die glückliche Gewinnerin.

Carsten Mjartan

 

JavaOne 2009: RIA development with JavaFX

“Hallo” von der JavaOne 2009! Zusammen mit drei meiner Kollegen sowie Hunderten von Entwicklern, Architekten und den größten Java Unternehmen bin ich gerade auf der Nummer eins Java Konferenz im schönen San Francisco (ich habe hier zum ersten Mal James Gosling live beim T-Shirt schleudern gesehen – leider habe ich keins gefangen).

Eins der Themen welches mich am meisten interessiert ist der aktuelle Stand von JavaFX (gerade wurde die Version 1.2 freigegeben). Seit Jahren entwickle ich nur JSPs, und ich schaue mich schon seit längerem nach einer neuen, innovativen und schicken Art den View Layer darzustellen um, ohne auf die gewohnten Features von Java zu verzichten zu wollen. JavaFX gibt es nun set knapp 2 Jahren (zum ersten Mal angekündigt im Mai 2007, das 1.0 Release kam im Dezember 2008) und ist mittlerweile ein stabiles und in Produktion einsetzbares Framework.

Ich habe mir Sessions über die Integration von Spring und JBoss Seam mit JavaFX (@see Flamingo) angesehen, welche es ermöglicht echte Enterprise Applikationen zu entwickeln. Auch wurde gezeigt, wie Adobe Photoshop/Illustrator Dateien direkt in ein JavaFX Archiv (eine .jfz Datei) exportiert werden können. Ein Entwickler kann über Namenskonventionen (jfx:layerid) direkt auf die enthaltenden Layer zugreifen und diese manipulieren. Auf diese Art und Weise wird es möglich, einem Designteam eine Spec zu geben, um ein Artefakt entwickeln, welches dann einfach in die Applikation integriert werden kann.

Was mir besonders gut gefallen hat ist die Möglichkeit Anwendungen auf verschiedene Plattformen wie das Web, den Desktop oder auch mobile Endgeräte zu deployen. Es wird auch möglich sein seine Anwendungen direkt in den brandneuen Java Store (der Java Store wurde während der Konferenz als geschlossene Beta gestartet, eine offene Beta Phase soll später im Sommer folgen) zu deployen.

Auch hat sich die Unterstützung für JavaFX in der Entwicklungsumgebung eclipse
verbessert. Netbeans ist immer noch die bevorzugte IDE, aber ich arbeite täglich mit eclipse und es gibt ein offizielles Plugin auf javafx.com sowie Firmen, welches Tools wie exadel‘s JavaFX Studio entwickeln. Dank dieser Tools konnte ich in wenigen Minuten mein erstes JavaFX “Anwendung” (nur ein schöner Text auf einem 3D Kreis) entwickeln und starten.

Als nächstes möchte ich echte Anwendungen schreiben, nicht nur ein “Hey, ein animiertes Ding – hab ich mit JavaFX gemacht” Demo. Wer sich selber die Finger schmutzig machen will kann die excellenten Tutorials auf javafx.com ausprobieren.

So, ich muss los, ich bin schon spät dran, die nächste Session geht gleich los.

Nick Prosch

 

Java Framework Marketing

Der erste Eindruck ist wichtig, denn er ist entscheidend für unsere Erwartungen. Wenn man sich nach einer neuen Technologie, oder einem Framework umsieht, so sind Erfolgsgeschichten anderer Nutzer ein wichtiger Faktor um Vertrauen aufzubauen. Natürlich ist es fraglich immer anderen Firmen nachzulaufen, aber das Risiko der allererste Nutzer zu sein ist doch sehr hoch. Aber nicht nur solche Case Studies, sondern auch eine echte Community (also kein totes Forum) mit Feeds, Blogs und vielem mehr, sollten heute auf jeder Framework Webseite zu finden sein, zeigt eine wohl ausgestattete Webseite doch transparent die aktive Entwicklung und Pflege. Natürlich sollte die Seite auch nett und ansprechend gemacht sein, idealerweise mit dem Framework selbst.
(weiterlesen…)

Fabian Lange

 

© 2010 codecentric