Rich Ajax Platform

Rich Ajax Platform
Rich Ajax Platform
Eclipse-logo.png
Entwickler Innoopract, 1&1, CAS Software AG
Aktuelle Version 1.3.2
(16.02.2011)
Betriebssystem Java VM
Kategorie Eclipse Plugin
Lizenz Eclipse Public License
Deutschsprachig nein
www.eclipse.org/rap

Die Rich Ajax Platform (kurz RAP) ist ein Eclipse-Plugin, zur Entwicklung von Web-2.0-Anwendungen (Ajax) auf Basis der Programmiersprache Java (nicht zu verwechseln mit der Scriptsprache JavaScript).
Die Entwicklung einer Rich-Ajax-Platform-Anwendung weicht vom traditionellen Modell der Entwicklung einer Web-2.0-Anwendung dahingehend ab, dass der Programmierer keinerlei HTML-, JavaScript- und XML-Kenntnisse besitzen muss, sondern ein ausschließlich auf Java basierendes Programm entwirft. Dazu kann auf viele Java- und Eclipse-Bibliotheken und Frameworks zurückgegriffen werden.[1][2]
Des Weiteren kann der bestehende Rich-Ajax-Platform-Quelltext mit geringem Mehraufwand für eine Desktopanwendung angepasst und als solche kompiliert werden.

Inhaltsverzeichnis

Entstehung

Die Rich Ajax Platform wurde von der auf die Entwicklung von Eclipse-Plugins spezialisierten Karlsruher Firma Innoopract Informationssysteme entwickelt und steht unter der Eclipse Public License als Open Source zur freien Verfügung.

Technischer Hintergrund

Ajax

Web-2.0-Anwendungen basieren auf Ajax, welches kurz für „Asynchrones JavaScript und XML” steht. Ajax ist eine Kombination aus bereits seit längerem bekannten Techniken für die Darstellung und Automatisierung von Webseiten. Das Zusammenspiel all dieser Technologien ermöglicht das asynchrone Nachladen von Inhalten innerhalb einer Webseite, ohne sie komplett neu laden zu müssen. Dies ermöglicht die Entwicklung von interaktiven Webseiten, die denselben Funktionsumfang wie eine Desktopanwendung besitzen. Ein bekanntes Beispiel ist der Web-2.0-Texteditor Google Text und Tabellen.

Um eine solche Web-2.0-Anwendung zu entwickeln, muss zunächst ein rudimentäres HTML-Gerüst erstellt werden, welches für die Anordnung aller visuellen Elemente zuständig ist. Um das so erstellte Layout zu formatieren, wird ein Cascading Style Sheet eingebettet. Somit ist es möglich, die Webseite auf verschiedenen Geräten und für Benutzer mit eingeschränkten Wahrnehmungsfähigkeiten barrierefrei darzustellen.
Nun werden mit Hilfe von JavaScript und XML interaktive Elemente eingebunden. So kann die Webseite Daten entgegennehmen und senden, diese lokal verarbeiten und den Inhalt entsprechend manipulieren. Sollten externe Inhalte benötigt werden, so kann JavaScript diese per XMLHttpRequest von einem entfernten Server herunterladen. Für Operationen, die über den Funktionsumfang von JavaScript hinausgehen, können serverseitig höhere Programmiersprachen wie PHP, Perl oder Java eingebunden werden.

Rich Client Platform

Die Rich Ajax Platform versucht, den Vorgang der Web-2.0-Programmierung zu erleichtern. Um diesen Prozess besser zu verstehen, ist zunächst das Verständnis einiger Grundlagen notwendig.

Eclipse baut auf dem Prinzip des Rich Client auf. Dieser basiert wiederum auf dem so genannten Fat Client. Der Fat Client unterteilt sich oberflächlich betrachtet in zwei Schichten: Auf der untersten Schicht findet die lokale Datenverarbeitung des Programms statt. Auf der darüberliegenden Schicht befindet sich meist eine GUI, also eine Grafische Benutzeroberfläche. Zur Anbindung an eine Programmiersprache bietet der Rich Client eine API.
Wie bereits erwähnt ist der Rich Client eine Erweiterung des Fat Client. Zur Datenverarbeitungs- und GUI- kommt eine Pluginschicht hinzu. Ein Plugin ist eine einfache Möglichkeit die Funktionalität einer bestehenden Plattform zu erweitern.

In der Theorie:

  • arbeiten verschiedene Plugins konfliktfrei parallel miteinander
  • sind Plugins anwendungs- und plattformunabhängig
  • sind Plugins einfach zu warten

Auf Grundlage dieser Paradigmen entstand die Rich Client Platform (kurz RCP) von Eclipse. Die RCP ist eine Sammlung vieler logischer, sowie visueller Bestandteile, die der Entwicklung von Java-Programmen dienen. So bietet die RCP beispielsweise das Standard Widget Toolkit (kurz SWT) welches der Erstellung nativer visueller Oberflächen dient, fertige Hilfe- und Update-GUI's, XML-Werkzeuge und vieles mehr[3][4].
Zudem steht die RCP mit der Eclipse Public License als Open Source zur freien Verfügung und wird stetig weiterentwickelt.

Rich Ajax Platform

Rich Ajax Platform Beispielanwendung[5]

Die Rich Ajax Platform (kurz RAP) vereinigt das Beste aus den Welten von Ajax und der Rich Client Platform. Es bietet Java-Programmierern ein mächtiges, einheitliches Framework zur Erstellung von Web-2.0-Anwendungen.
RAP basiert auf einer Client-Server-Struktur. Auf der Serverseite befindet sich ein Applikationsserver wie z.B. Apache Tomcat, Jetty, etc. der das Javaprogramm ausführt und die Daten an den Client (d.h. an einen Browser) sendet. Für den Browser werden die vorhandenen SWT-Oberflächenelemente durch RWT (Qooxdoo), also HTML- und Ajax ersetzt.[6]

Installation

Ist Eclipse bereits installiert, gestaltet sich die Installation von RAP denkbar einfach per Update-Site. Alternativ gibt es fertige Packages auf der RAP-Webseite.

Implementation

Es folgt ein illustratives Beispiel zur Entwicklung einer RAP-Anwendung auf Basis von SWT.

Innerhalb Eclipse wird zur Plugindevelopment Perspektive gewechselt und ein neues Projekt per: "New Project > Plugin Project > RAP Hello World" angelegt[7].

In der Klasse "Application" wird nun folgende Methode geschrieben:

// Hello World in RAP
public Text txt;
 
public Display createUI() {
        Display display = new Display();
 
        Shell shell = new Shell(display); // Neues Fenster anlegen
        shell.setSize(320, 240); // Größe des Fensters festlegen
 
        txt = new Text(shell, SWT.SIMPLE); // Textfeld erstellen
        txt.setLocation(shell.getClientArea().x + 10, shell.getClientArea().y + 40); // Textfeld positionieren und skalieren
 
        Button button = new Button(shell, SWT.PUSH); // Button erstellen
        button.setText("Hello World!"); // Button-Text festlegen
        button.setBounds(shell.getClientArea().x + 10, shell.getClientArea().y + 10, shell.getClientArea().width - 20, 20); // Button positionieren und skalieren
        button.addSelectionListener(new SelectionListener(){ // Listener zum Button hinzufügen, um den Klick darauf abzufangen
                public void widgetDefaultSelected(SelectionEvent e) { 
                        }
                        public void widgetSelected(SelectionEvent e) {
                                txt.setText("Hello World!"); // Bei Klick "Hello World!" im Textfeld ausgeben
                        }});
 
        shell.open(); // Fenster öffnen
 
        return display;
}

Weblinks

Quellen

  1. RAP Insights Blog: Introducing "RAP Insights"
  2. Golem News Artikel: Eclipse Rich Ajax Platform 1.0 verfügbar
  3. Eclipse: Rich Client Platform FAQ
  4. Eclipse: Rich Client Platform in der Eclipse Wiki
  5. Eclipse: Rich Ajax Platform Beispielanwendung
  6. Eclipse: Rich Ajax Platform Informationseite
  7. The Screencast Blog: Videos zur RAP Installation und Demoerstellung

Wikimedia Foundation.

Игры ⚽ Поможем написать курсовую

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Rich AJAX Platform — Тип AJAX enabled Rich Internet Application Разработчик Eclipse Foundation Написана на Java Операционная система Cross platform Языки интерфейса Multilingual …   Википедия

  • Rich AJAX Platform — Développeur Fondation Eclipse Dernière version …   Wikipédia en Français

  • Rich AJAX Platform — Infobox Software name = Rich AJAX Platform collapsible = yes caption = AJAX based application developer = Eclipse Foundation latest release version = 1.1.0 latest release date = release date|2007|06|13 latest preview version = 1.1.1 Build latest… …   Wikipedia

  • Rich Client Plaform — Plateforme client riche Une plateforme client riche (en anglais Rich Client Platform ou RCP) permet le développement de clients riches. Sommaire 1 Historique 1.1 Jusqu en 2000 : les applications classiques, les clients lourds et le modèle… …   Wikipédia en Français

  • AJAX — У этого термина существуют и другие значения, см. Аякс. AJAX, Ajax (ˈeɪdʒæks, от англ. Asynchronous Javascript and XML  «асинхронный JavaScript и XML»)  подход к построению интерактивных пользовательских интерфейсов веб приложений …   Википедия

  • Rich Internet application — Articleissues article =September 2008 OR = July 2008 refimprove = July 2008 advert = July 2008 cleanup = July 2008Rich Internet applications (RIAs) are web applications that have the features and functionality of traditional desktop applications …   Wikipedia

  • OpenLink AJAX Toolkit — (OAT) Developer(s) OpenLink Software Stable release 2.8 Written in JavaScript Type JavaScript toolkit …   Wikipedia

  • List of Ajax frameworks — This is a list of notable Ajax frameworks, used for creating web applications with a dynamic link between the client and the server. JavaScriptJavaScript Frameworks are browser side frameworks very commonly used in Ajax development. There are… …   Wikipedia

  • Cross-platform — For a type of interchange between different lines in a metro system, see cross platform interchange. In computing, cross platform, or multi platform, is an attribute conferred to computer software or computing methods and concepts that are… …   Wikipedia

  • Eclipse (среда разработки) — У этого термина существуют и другие значения, см. Eclipse. Eclipse …   Википедия

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”