Änderungen in den Tutorials ab Sun NetBeans 6.8

Ab Sun NetBeans 6.8 sind einige Änderungen gegenüber den drei Original-Tutorials zu beachten, damit diese von Erfolg gekrönt werden:

1. Creating a Simple Web Application Using a MySQL Database

Creating a New Project
Während der Projekterstellung wird ein bereits ordentlich konfigurierter GlassFish v3 erwartet. Dieser kann nur dann korrekt konfiguriert werden, wenn er die Zugriffsberechtigung zu seiner Default-Domain (domain1) besitzt. Leider hat er diese nicht, sofern GlassFish unter Windows 7 im Ordner C:\Programme\... installiert wurde - es sei denn, Sie arbeiten als lokaler Admin, tststs. Erstellen Sie im Fehlerfall zunächst einen Ordner C:\Users\benutzername\.glassfish\domains und darin dann in NetBeans mit dem GlassFish-Configuration Wizard eine neue Domain namens domain1. Der GlassFish lässt sich erst dann sauber konfigurieren.

Setting up a Connection Pool
Die im Tutorial beschriebene Methode zur Erstellung einer neuen JDBC Resource steht nicht mehr zur Verfügung. Rufen Sie stattdessen aus dem Hauptmenü New->File... auf, wählen Sie die Kategorie GlassFish und darin den Dateityp JDBC Resource. Fahren Sie dann weiter im Tutorial fort.

Referencing the Datasource from the Application
Die Deployment Descriptor-Datei web.xml wird nicht mehr automatisch erstellt. Klicken Sie in Ihrem Java-Projekt (Baumstruktur in NetBeans) mit der rechten Maustaste auf den Knoten WEB-INF, wählen Sie New->Other... aus. Im öffnenden Assistenten wählen Sie die Kategorie Web und darin den Eintrag Standard Deployment Descriptor (web.xml) aus. Dadurch wird die Datei web.xml am rechten Ort erstellt.

Adding the Database Driver's JAR File to the Server
Die Option Enable JDBC Driver Deployment ist standardmäßig bereits aktiviert. Hier ist nichts weiter zu tun...

Deploying and Running the Project
Manchmal kommt es beim Starten der Web-Applikation zum Fehler Access to the requested resource has been denied. Schalten Sie dann in NetBeans in den Project-Properties im Reiter Run die Option Deploy on Save aus. Machen Sie ein Clean and Build und danach Run.

2. Weitergehende Webprogrammierung mit NetBeans

Lassen Sie beim Erstellen des neuen Java-Web-Projekts vom NetBeans-Assistenten nicht das Servlet in die Datei web.xml eintragen.
Da auch hier die web.xml nicht automatisch erstellt wird, klicken Sie wiederum in Ihrem Java-Projekt (Baumstruktur in NetBeans) mit der rechten Maustaste auf den Knoten WEB-INF, wählen Sie New->Other... aus. Im öffnenden Assistenten wählen Sie die Kategorie Web und darin den Eintrag Standard Deployment Descriptor (web.xml) aus. Dadurch wird die web.xml erstellt. Danach können Sie gemäß Tutorial darin den Namen Ihres Servlets als welcome-file eintragen.

3. Introduction to the JavaServer Faces Framework

Seit NetBeans 6.8 ist JavaServer Faces 2.0 integriert (vorher Version 1.2). Dadurch ergeben sich einige Änderungen.

Creating a Web Application with the JSF Framework
Die leere Willkommensseite heißt nicht mehr welcomeJSF.jsp, sondern neuerdings handelt es sich um ein Facelet namens index.xhtml. Ignorieren Sie es.
Die Faces-Configuration faces-config.xml wird nicht mehr automatisch erstellt. Klicken Sie mit der rechten Maustaste auf Ihr Java-Projekt (Baumstruktur in NetBeans), wählen Sie New->File... aus. Im öffnenden Assistenten wählen Sie die Kategorie JavaServer Faces und darin den Eintrag JSF Faces Configuration. Die Datei wird nun am rechten Ort angelegt.

Creating the Greeting Page
Die XML-Sektion managed-bean muss nicht mehr in die Konfigurationsdatei faces-config.xml eingetragen werden. Die Deklaration der Managed Beans geschieht ab JavaServer Faces 2.0 mittels Annotation.

Setting Page Navigation
Der Assistent Add Navigation Rule steht nicht mehr zur Verfügung. Geben Sie stattdessen die im Tutorial angegebene Navigationsregel per Hand in die Datei faces-config.xml ein. Ergänzen Sie auch den Navigation Case darin per Hand, da der Assistent Add Navigation Case ebenfalls nicht mehr zur Verfügung steht.

Hooking up a Backing Bean
Das Eintragen der XML-Sektion managed-bean in die faces-config.xml ist nicht mehr notwendig. Stattdessen wurde die Klasse UserBean.java bereits um die gleichbedeutenden Annotationen @ManagedBean(name="UserBean") sowie @RequestScoped erweitert.

Starten der Web-Applikation
Bei mir kam es beim Starten der Web-Applikation zum Fehler An Error Occured: Target Unreachable, identifier "UserBean" resolved to null. Ich habe dann (1) NetBeans geschlossen, (2) den Java-Prozess abgeschossen und danach NetBeans wieder neu gestartet, (3) die Projekt-Eigenschaft Deploy on Save ausgeschaltet (blöd, dass sie in jedem neuen Projekt standardmäßig aktiviert ist) und (4) alle anderen Projekte außer dem jAstrologer in NetBeans geschlossen. Nach einem Clean and Build mit anschließendem Run ging es plötzlich wunderbar.

Viel Erfolg!!!