JSF: Method not called

Java Server Faces (JSF) ist eine schöne Technologie für den Web-JEE-Bereich.

Es bietet eine gute Möglichkeit die Entkopplung der einzelnen Schichten einzuhalten und mit der Kombination von Facelets, kann sogar ein Grafiker einfacher damit arbeiten.

Bei JSF sind bestimmte “Aktionen” einer Methode zugeordnet. (Methode aus dem ManagedBean, normale Klasse welche in faces-config.xml festgeleg wird, bzw. bei Spring-Einsatz kann man das auch weglassen). D.h. eine Aktion “Kunde anlegen”, welches als Button dargestellt wird, wird mit der Methode CustomerController.add() gebunden.

[Read More]

WebSphere + JSF 1.2 + Facelets

Möchte man ein JSF Projekt unter IBM WebSphere Application Server 6.x nutzen, muss man ein paar Sachen bedenken:

Wie man bei [1] sehen kann, unterstüzt WebSphere 6.1 Servlet 2.4 und JSP 2.0 - das entspricht etwa einem Tomcat 5.5.x [2]. Möchte man nun JSF 1.2 (mittels MyFaces 1.2.x) nutzen hat man da ein kleines Problem. JSF 1.2 benötigt nämlich Servlet 2.5, JSP 2.1 und Java 5 oder später. Genau das kann WebSphere 6.1 mit seiner integrierten JSF 1.1 Implementierung nicht bieten.

[Read More]

IE: Change Event und Autocompletion

Im IE (7) gibt es Probleme mit dem Change-Event bei einem Input-Feld, wenn dies auch Autocompletion von script.aculo.us[1] beinhaltet.

Wird ein Input-Feld bezüglich den Veränderungen beobachtet ($('field').observe('change', ...')) wird beim IE dieser Event dann gefeuert, wenn der Focus das Feld verlässt.

Hat das Input-Feld nun auch Autocompletion, wird dieser Event nicht mehr gefeuert, wenn, der Nutzer mit Tab oder Enter ein Eintrag aus der Autocompletion-Liste auswählt.

Hier muss man den Event selbst feuern, wenn der Eintrag aus der Autocompletion-Liste ausgewählt wurde. Da man bei Prototype keine native Events abfeuern kann, nutzt man die eigenen Events [2] nutzen.

[Read More]

JavaFX 1.0

Seit dem 04.12.2008 gibt es nun endlich die Version 1.0 von JavaFX. JavaFX ist eine Plattform um Rich Internet Applications für verschiedene End-Geräte zu erstellen. Im Idealfall realisiert man eine Anwendung, die dann später im Browser, auf dem Desktop und auf dem mobilen Gerät läuft. Für weitere Details sei auf die JavaFX-Seiten verwiesen [1] und [2].

Überblick

Um JavaFX-Anwendung zu nutzen, braucht man standardmäßig nur die aktuelle Java Version. Hier ist Java 1.6.0_11 [3] passend, da diese Version die Fähigkeit anbietet, Applets auf den Desktop zu ziehen. Beim ersten Aufruf einer JavaFX-Anwendung werden die Runtime-Bibliotheken beim ersten Mal runtergeladen, wenn sie nicht vorhanden sind. Bei entsprechender Implimentierung der JavaFX-Anwendung (was ja ein Applet ist), kann man sich das Applet auf den Desktop ziehen. Schließt man dann den Browser, bekommt man die Möglichkeit ein Verweis auf den Desktop zu erstellen, um später das Applet - und nur das Applet, nicht auch den Browser - wieder zu nutzen.

[Read More]

JavaFX 1.0 Example

Im letzten Beitrag habe ich kurz JavaFX vorgestellt. Zu den theoretischen Daten folgt nun ein kleines praktisches Beispiel.

Das Beispiel basiert auf das Tutorial von SUN [1] und wurde um die Eigenschaft erweitert, dass das Applet auch auf dem Desktop verwendet werden kann.

Das Beispiel erstellt eine analoge Uhr, welche man sich auf den Desktop ziehen kann. Der Fokus liegt auf die Implementierung und nicht auf jegliche graphische Feinheiten.

[Read More]

Prototype each(), IE und null

Bei der Arbeit mit JavaScript kommt man irgendwann in die Situation durch ein Array zu iterieren. Dabei nutzt man nicht immer einfach indizierte Arrays, sondern oft auch Arrays mit Lücken in den Indizes oder sogar assoziative Arrays. Diese letzten Varianten kann man eigentlich genauso durchlaufen, wie die erste, wenn da nicht der IE wäre. Der IE hat Probleme mit Lücken in Arrays. Wie man im folgenden Listing sehen kann, gibt es beim Firefox fast die erwartbaren Ergebnisse. Nur fast. Denn beim ersten Output stimmen die Indizes nicht. Das gleiche Problem hat man jedoch auch beim IE. [lang=js] var ar1 = new Array(); ar1[2] = ‘A’; ar1[13] = ‘B’; ar1[23] = ‘C’; var out = ‘’; ar1 = ar1.compact(); ar1.each(function(item, index) { out += index + ‘: ’ + item + ‘, ‘; }); // => out = 0: A, 1: B, 2: C, out = ‘’; for(i in ar1) { if( (typeof ar1[i]) != ‘function’ ) out += i + ‘: ’ + ar1[i] + ‘, ‘; } // => out = 2: A, 13: B, 23: C, var ar2 = { a: ‘Part_1’, b: ‘Part_2’, sum: ‘Part_1_2’ }; out = ‘’; for(a in ar2) { out += a + ‘: ’ + ar2[a] + ‘, ‘; } // => out = a: Part_1, b: Part_2, sum: Part_1_2, [/lang]

[Read More]

Firefox Add-on Pencil

Um schnell Diagramme bzw. Screendesign zu erstellen, empfehlt es sich das Firefox Add-on “Pencil” zu nutzen. Pencil bietet die gängisten HTML-Elemente (Inputfeld, Tabellenstruktur, Select-Boxen etc.) und ein paar zusätzliche Elemente (Notizen, Pfeile etc.) um somit in kurzester Zeit schöne Screendesigns zusammen zu klicken. Die einzelnen Elemente können gruppiert werden und an andere Elemten ausgerichtet werden. Jedes Element beinhaltet ein paar Einstellungsmöglichkeiten wie Farbe, Schriftart und Größe.

Die erstellten Designs können dann als PNG exportiert werden.

[Read More]

WebDav ganz simpel

Ja, WebDav ist leichter zu installieren als man denkt. Wobei installieren hier zu hoch gegriffen ist. Hat man schon ein Apache installiert muss man nur noch ein paar Konfigurationen durchführen und schon funktioniert es - simple.

In Apache benötigt man die Module (siehe httpd.conf):

[lang=’’] LoadModule dav_module modules/mod_dav.so LoadModule dav_fs_module modules/mod_dav_fs.so [/lang]

Nun könnte man z.B. in einer oder folgendes definieren: [lang=’’] # WebDav Modul aktivieren Dav On

[Read More]

[Update] MQ install on Linux

Aus gegebenem Anlass wird WebSphere MQ benötigt. Da IBM eine 90tägige Trail-Version anbietet und man lieber zuerst ausprobiert, bevor etwas produktiv genutzt werden soll, habe ich testweise WebSphere MQ 7 unter Ubuntu installiert. Es wird keine direkte Ubuntu-Version angeboten, aber die rpm-Pakete lassen sich auch unter Ubuntu installieren. Man muss nicht alle rpm-Pakete installieren, erst recht nicht die mitgelieferte Java-Umgebung (IBM Java SDK). Hier reicht die SUN Version völlig aus (Paket: sun-java6-jdk).

[Read More]
linux  mq  ubuntu 

Comeback

so, nach ein paar Monaten gibt es wieder einen neuen Blog.

Themen sind u.a.:

  • Architektur und Entwicklung
  • IT Sicherheit
  • Webentwicklung
  • JEE, PHP etc
  • Brainstorming

Auf ein Neues!

dev