# Aller Anfang ist schwer - Web



## Kr0e (4. Okt 2011)

Hallo,

ich komm eigentlich aus der Java-Desktop-Only Ecke und habe noch nie was aufwendigeres als ein "HelloWeb" mit Hilfe von JSP + Servlets ausgegeben. Ich würde meinen Horizont gerne erweitern und bin zur Zeit dabei "einen ÜBerblick" zu bekommen, habe auch bereits schon viel gelesen und zum Testen den GlassFish Server mit Eclipse am Laufen, um hin und wieder auftauchende Beispiele zu testen. Mein Problem ist ehrlich gesagt die Menge an Informationen und da ich leider so gar keine Erfahrung mit WebApps habe, fällt es mir schwer, wichtiges von unwichtigem zu trennen.

Aber besonders suche ich bislang die Antworten auf folgende Fragen:

1. Ersetzen JSF die JSP+Servelts , oder ergänzen sie diese nur ? Ich habe schon simplen Datenbankaustausch von JSP heraus gemacht mit Hilfe von Beans aber habe danach erst von JSF erfahren. JSF wirkte auf den ersten Blick iwie als ob man JSP und Servlets nicht mehr braucht aber ich bin mir sicher, ich habe iwas falsch verstanden.


2. Ist der einzige Unterscheid zwischen eines AppServer und WebServer, dass AppServer noch EJB unterstützen ? Und wofür braucht man EJBs ?

3. Was sind "veraltete" Techniken (vlt von denen, die ich bereits aufgezählt habe) und gelten vlt nun schon als deprecated ?

EDIT: 4: Achja, was sind Facelets ?

Habe inzwischen ein Buch, das ich durcharbeite aber das beschreibt meistens detailiert etwas, was ich z.T. schon weiß und geht nicht auf meine Fragen explizit ein =(.

Danke schonmal, wenn mir jemand eine kleine Starthilfe geben kann!

Gruß,

Chris


----------



## dayaftereh (4. Okt 2011)

Zu 1)
Also JSF ist ein Framework das aus JSP und Selvelts enstanden ist. Bei JSF werden alle anfragen auf eine ControllerServlet geleitet und das Verteilt dann die Anfragen und setzt die RequestParameter in deine Beans, danach leitet das ControllerServlet die Anfrage auf deine xhtml seiten weiter. Datürch bekommt man eine Model 3 achetektur die, die Anwendungs-Logik von der Presentations Logik Trennt.

Zu 4)
Also Facelets werden von JSF genutzt um die seite zu Rendern, also man kann dann verschiedene Renderkits schrieben die dann die antwort seite rendert.


----------



## JimPanse (4. Okt 2011)

1. Java EE Web-Framework basieren auf dem Model-2 Muster (Erweiterung von MVC)
-> Server-side Java: Understanding JavaServer Pages Model 2 architecture - JavaWorld

2. EJB beinhaltet standardiserte Komponenten zur Abbildung der Geschäftslogik einer Java EE Anwendung (Datenbankzugriffen, Nachrichtenverarbeitung, etc)
-> The Java Community Process(SM) Program - JSRs: Java Specification Requests - detail JSR# 220

3. Keine Ahnung -> meinst du damit Scriptlets?? (Einbettung von Java Code in JSP-Seiten)
-> JSP Tutorial

4. Die Standardseitenbeschreibungssprache in Java EE Web-Anwendungen ist JSP. Facelets war zunächst ein alternativer Viewhandler für JSF 1.2 aber seit JSF 2.0 ist es der Standard Viewhandler und verwendet XHTML Seitenbeschreibungssprache. Der Vorteil von Facelets ist unter anderem der Templating Mechanismus und die Erstellung von Composite-Components:
(etwas älter aber immer noch gut -> Facelets fits JSF like a glove)


----------



## Kr0e (4. Okt 2011)

Danke soweit, das hat schonmal sehr geholfen! Hab auch heute nochmal einiges durchforstet und nun ist vieles verständlicher geworden =).

Gruß,

Chris


----------



## Nogothrim (5. Okt 2011)

Man muss aber dazu sagen, dass JSP, seit es JSF 2.0 gibt nicht mehr "Standard", sondern Legacy ist. Genauso sind EJBs in vielen Fällen einfach unnötig.


----------



## Sym (5. Okt 2011)

Nogothrim hat gesagt.:


> Man muss aber dazu sagen, dass JSP, seit es JSF 2.0 gibt nicht mehr "Standard", sondern Legacy ist. Genauso sind EJBs in vielen Fällen einfach unnötig.


Inwiefern sind EJBs unnötig? Wegen CDI? Das glaube ich nämlich kaum.


----------



## Kr0e (7. Okt 2011)

Hallo,

1. Facelets sind ja eine Erweiterung für JSF. Ich habe nun von einigen UI Kits gelesen (OpenFaces / PrimeFaces). Nach weiterem Lesen ist mir allerdings bis jetzt nicht ganz klar, wo genau sich diese Kits nun einordnen lassen (Libraries die auf Facelets basieren oder auf JSF + JSP oder ganz woanders ?). Zur Zeit raucht mir ein wenig der kopf, weil eigentlcih alles was ich lese iwie neu ist...

2. Und ohne nun eine Diskussion anzetteln zu wollen, aber sind Facelets dem normalen JSF (+JSP) vorzuziehen (besser) ? 

3. Und diese UI Kits... sind das quasi einfach nur Taglibs die auf JSF basieren ?

Ich versuche wirklich immer erstmal alles durch google+wiki in Erfahrung zu bringen, aber iwie habe ich bisher keine eindeutigen Informationen gefunden.


----------



## Sym (7. Okt 2011)

Hallo,

zu 1.) Primefaces, OpenFaces und z.B. Richfaces sind Implementierungen von JSF und nutzen Facelets.

zu 2.) Facelets sind der neue Weg und JSF mit JSP ist mit JSF 2 deprecated.


----------

