NetBeans-Plattform – Modulare Desktop-Applikationen KNOW-HOW # 75 Mit Hilfe der NetBeans-Plattform, einer Java/Swing-basierten Rich Client Platform (RCP), lassen sich modulare, plattformunabhängige Desktop-Applikationen erstellen. Viele Low-Level-Aufgaben werden dabei von der Plattform übernommen. Das modulare Konzept vereinfacht das Konfigurationsmanagement bedeutend. Unsere Basis-Applikationen werden kundenspezifisch erweitert und angepasst. Im Java-GUI-Bereich hat sich die NetBeans-RCP als optimale Technologie herausgestellt, da sich ganze Module, Menüpunkte, Actions etc. konfigurativ hinzufügen und/oder auswechseln lassen. Noser Engineering AG hat eine Prototyp-Applikation erstellt und gezeigt, dass bestehende hauseigene Swing-Komponenten integriert werden können. Stephan Amann Head R&D ACS Solutions Switzerland Ltd. Das Projekt ACS Solutions Switzerland Ltd. betraute die Noser Engineering AG mit der Realisierung eines Pilotprojekts, einer J2EE-Client-Applikation, basierend auf der NetBeans-Plattform. Der Nutzen Dank des Modulsystems der NetBeansPlattform mit deklarativen Extensionpoints lassen sich Code-Teile besser trennen. Sowohl existierende Java/SwingKomponenten als auch existierendes Know-how in diesen Technologien lassen sich wiederverwenden. Dank der vielen NetBeans-Plattform-APIs lassen sich Applikationen in der Regel stabiler, konsistenter und mit weniger Aufwand entwickeln als dies mit hausgemachten Bibliotheken möglich wäre. Mit einem bekannten Framework anstelle einer hausgemachten Lösung können ausserdem neue Entwickler schneller eingearbeitet und produktiv werden. 3rd Party Module 1 3rd Party Module [...] Application Module 1 Application Module [...] NetBeans Platform Windows System API Data Systems API Nodes API Explorer & Property Sheet API ... Runtime Container Java SE NETBeans Platform Application Layers Die Realisierung Neben der NetBeans-Plattform konnten existierende Java/Swing-Komponenten eingesetzt werden wie das hausgemachte Authentifizierungs-Framework. Die Kommunikation mit dem Server wurde mit EJBTechnologie realisiert. Über das deklarative Modulsystem kann die Applikation so konfiguriert werden, dass lediglich jene Teile der Applikation (Menüeinträge, Tasten der Werkzeugleiste, Tabs etc.) dem Benutzer angezeigt werden, zu deren entsprechenden Services er auch Berechtigung hat. Die Technologie Zur Entwicklung wurde die NetBeans IDE verwendet, welche gute Unterstützung für die Entwicklung von NetBeans-Plattform- und Swing-Projekten bietet. Da NetBeans-Plattform-Projekte standardmässig auf Ant basieren, liess sich die Applikation gut in das existierende Build-System einbinden. Als Start- und Installationsmechanismus wurde Java Web Start gewählt. Die WAR-Datei, welche vom Build-System generiert wird, konnte problemlos in die existierende EAR-Datei integriert werden. Das Fazit Die NetBeans-Plattform ist zurzeit eines der umfangreichsten Frameworks für modulare und plattformunabhängige Desktop-Applikationen. Bei Fragen kann man auf eine aktive Community zurückgreifen. Dank der modularen Architektur der entwickelten Applikation ist es nun möglich, kundenspezifische Anforderungen in separate Module auszulagern. Dadurch kann zukünftig das Konfigurationsmanagement bedeutend vereinfacht werden. noser engineering ag tel. 0848 noserag e-mail [email protected] | member of the noser group | www.noser.com