Einsatz von Spring Web Flow und dessen Alternativen

andy0585

Mitglied
Servus,

ich bin gerade dabei, eine Webapplikation mit JSF zu implementieren und habe mir überlegt, ob ich nicht auch gleich Spring Web Fow integrieren soll. Da, wie alle Entscheidungen bzgl. eines Frameworkeinsatzes, dies immer Projektspezifisch erfolgen sollte, wollte ich fragen, welche Gründe Ihr seht, die für bzw. gegen eine Integration Spring Web Flow sprechen könnten? Ich könnte mir vorstellen, dass vor allem die lose Kopplung der View eine Rolle spielen könnte!?

Auch würde mich interessieren, welche Alternativen es für JSF mit Spring gibt!? Alles was ich bisher gefunden habe, war JSF mit Oracle ADF (allerdings sehr "unflexibel" bzw. auf einen bestimmten Applikationsserver abgestimmt/optimiert) und JSF mit JBoss Seam.

Ich hoffe Ihr könnt mir weiterhelfen!!!
 

andy0585

Mitglied

Rydl

Bekanntes Mitglied
was ist denn dein problem? deine frage ist einfach schlecht gestellt, du könntest uns genauso gut fragen, was deine lieblingsfarbe ist...

viele gründe sprechen für und wider jeder technologie. man muss wissen, was man am ende haben will, dann kann man entscheiden, welches werkzeug am besten passt.
wenn du also fragen willst, welches das beste werkzeug / framework ist, wirst du keine definitive antwort bekommen, da es sie nicht gibt.
willst du wissen, welches framework für deine web-app am besten geeignet ist, musst du wohl etwas mehr über dein projekt verraten...
 

andy0585

Mitglied
Sorry, wenn ich mich unverständlich ausgedrückt habe! Ich habe eine bestehende Webanwendung, bestehend aus JSPs, Servlets, Handler und Beans! Nun möchte ich die Anwendung einwenig modernisieren, da gewisse Teile noch mit "Uralt-Techniken" realisiert sind. Um nun ein Refactoring des Frontends zu erreichen, also möglichst viel vom bestehenden zu übernehmen, aber auch neue Komponenten (speziell in Richtung RIA) auf der View zu integrieren, setze ich JSF ein.
In diesem Zuge bin ich gerade an der Überlegung, auch gleich Spring Web Flow oder ein ähnliches Framework zu integrieren, um etwas mehr Ordnung in die Servlets, ... zu bringen. Ich sehe hier vorallem den Vorteil, dass Spring einfach zu erweitern ist, bspw. um Spring Security, ..., und damit später sehr nützlich sein kann. Allerdings habe ich auch Bedenken, dass Spring eben nicht das "einfachste" Framework ist, das man mal ebenso in seine Anwendung integriert!
Was haltet ihr von der Entscheidung, bzw. seht ihr mögliche Alternativen zu SWF?
Sollte weiterhin noch nicht ganz klar sein, was mein Problem ist, bitte nochmals kurz melden! Schonmal vielen DANK!!!
 

klarkimming

Mitglied
Hallo,

du solltest dir als Alternative zu JSF vielleicht mal Spring MVC ansehen. In Verbindung mit AJAX und JQuery kann man damit sehr gute Ergebnisse erzielen.

Anmerkung zu JSF:

JSF ist ein Komponenten basiertes Framework und hat damit ein deutlich anderen Ansatz als die meisten alten Servlet und JSP Anwendungen. Reine Webentwickler haben meist einige Probleme bei der Umstellung auf JSF...

Du solltest falls du JSF benutzt die akutellste Version verwenden, da dort erhebliche Fortschritte erzielt worden sind.

Anmerkung zu Spring Web Flow und JSF

Aus eigener schmerzhafter Erfahrung wuerde ich dir raten nicht mehrere dir unbekannte Technologien gleichzeitig einzusetzen.
 

andy0585

Mitglied
du solltest dir als Alternative zu JSF vielleicht mal Spring MVC ansehen. In Verbindung mit AJAX und JQuery kann man damit sehr gute Ergebnisse erzielen.
Da geb ich dir Recht, allerdings musst du bei Verwendung von AJAX und JQuery zusätzlich mit JavaScript arbeiten und AJAX direkt verwenden. Wenn du JSF verwendest und bspw. ein Framework wie Oracle ADF oder RichFaces einsetzt, verwendest du in der View direkt nur eine Technologie, der Rest wird generiert und du musst dich nicht mit JS- oder AJAX-Kleinigkeiten rumschlagen! (Natürlich mit dem Nachteil, dass du das generierte JS nicht beeinflussen kannst!)

Anmerkung zu JSF:

JSF ist ein Komponenten basiertes Framework und hat damit ein deutlich anderen Ansatz als die meisten alten Servlet und JSP Anwendungen. Reine Webentwickler haben meist einige Probleme bei der Umstellung auf JSF...

Du solltest falls du JSF benutzt die akutellste Version verwenden, da dort erhebliche Fortschritte erzielt worden sind.
Ist schon richtig, aber ich sehe kein Problem darin, ein paar JSF-Tags in ne JSP einzubinden (NUR auf die View bezogen!) Um die Umstellung im Bereich M und C zu erleichtern, dachte ich eben an Spring Web Flow!

Du solltest falls du JSF benutzt die akutellste Version verwenden, da dort erhebliche Fortschritte erzielt worden sind.
Geb ich dir Recht!

Anmerkung zu Spring Web Flow und JSF

Aus eigener schmerzhafter Erfahrung wuerde ich dir raten nicht mehrere dir unbekannte Technologien gleichzeitig einzusetzen.
JSF ist mir nicht unbekannt, neu wäre eben nur Spring!
 

JanHH

Top Contributor
Also zu seam sei zu sagen, dass es zwar enorm leisungsfähig ist und ich persönlich es sehr toll finde, es einen aber auch dazu zwingt, sich ziemlich rigide an bestimme, festgelegte Strukturen zu halten. Wenn man eine Anwendung von Grund auf neu baut, oder nur Entity-Klassen übernimmt, oder sowas, oder es sich eh schon um eine EJB-Anwendung handelte, ist seam sicherlich grossartig. So wie Du es beschreibst klingt es aber so, als wäre das meiste eh schon vorhanden, und das liesse sich dann sicher eher schwierig integrieren. Aber mit JSF bist Du ja eh schon am tun, das spricht wiederum für seam. Im Grunde ist mein Rat, entscheide Dich für ein halbwegs zukunftssichere Technologie, bau gegebenenfalls lieber etwas mehr von der bestehenden Anwendung um, so dass Du ein sauberes, neues System auf basis moderner Technologien erhältst, und dann ist erstmal gut.
 

andy0585

Mitglied
Wenn du schon JSF nimmst, dann bitte nur die aktuelle 2.0 Version, und JSP ist out, Facelets sind jetzt in.
Muss ich dir Recht geben, allerdings müsste ich ja alle View-Seiten neu schreiben, wenn ich Faclets verwende und leider fehlt mir momentan die Zeit dazu, deshalb noch die alten aber bestehenden JSPs! Auf Dauer gesehen würde ich natürlich auf Facelets setzen!

Oder gibt es eine Möglichkeit Facelets und JSPs zu kombinieren? - Wüsste ich nämlich nicht!??
 
M

maki

Gast
Wieso kombinieren, wenn Sun JSPs für tot erklärt hat? ;)

Schon klar dass du jetzt nciht alles neuschreiben willst, aber eine Mischung wäre wohl das schlechteste aus beiden Welten.
 
M

maki

Gast
Hab ich bisher noch nicht gehört, hast du irgendwelche Quellen dafür?
Sieh dir doch mal irgendeine Ankündigung für JSF 2.0 an, da wird dann meist groß & breit darauf hingewiesen dass die neue Standardtechnologie für die View Facelets sind, nicht JSP, auch steht meist dabei, dass man mit JSP keine bzw. nicht alle Features von JSF 2.0 nutzen kann.

Hier ein einziges Beispiel, das offizielle JEE Facelets Tutorial:
Introduction to Facelets - The Java EE 6 Tutorial, Volume I
Da steht doch wirklich:
...
JavaServer PagesTM (JSPTM) technology, previously used as the presentation technology for JavaServer Faces, does not support all of the new features available in JavaServer Faces 2.0. JSP is considered as a deprecated presentation technology for JavaServer Faces 2.0.

Welche Alternative bzw. Lösung würdest du vorschlagen?
Wieso, ich dachte du hättest schon eine Lösung die für dich ok ist.
Wenn du umstellen willst, wären Facelets wohl angebracht ;)
 

JanHH

Top Contributor
Also JSF-Seiten, die mit JSPs realisiert sind, zu facelets-Seiten zu verwandeln, ist eigentlich trivial (sofern sie keine JSP-scriplets und ähnlichen Schweinkram enthalten). Die Struktur und Syntax der JSF-Tags ist identisch, die Seiten sehen genauso aus, sie heissen nur ".xhtml" statt "jsp" und man muss nur den bestehenden Kram von einem ui:composition-Tag, welches die Seite einleitet und beendet, umschliessen lassen. Es ist quasi nur copy+paste.

Ein Wort noch zu JSF 2.0: Sicherlich erheblich besser als JSF 1.2, allerdings basiert seam noch auf JSF 1.2, und JSF 2.0 ist ziemlich exakt das, was JSF 1.2 in Zusammenspiel mit seam ist. Seam dürfte da die entscheidende Inspirationsquelle gewesen sein. Daher, wenn man seam benutzt, spricht nichts gegen JSF 1.2, im Gegenteil, es ist halt die Version, die da momentan standardmässig Verwendung findet. Die ganzen Mängel, die in JSF 2.0 behoben werden, behebt seam ebenso. Also keine Scheu vor der "alten" Versionsnummer.
 

andy0585

Mitglied
Also JSF-Seiten, die mit JSPs realisiert sind, zu facelets-Seiten zu verwandeln, ist eigentlich trivial (sofern sie keine JSP-scriplets und ähnlichen Schweinkram enthalten). Die Struktur und Syntax der JSF-Tags ist identisch, die Seiten sehen genauso aus, sie heissen nur ".xhtml" statt "jsp" und man muss nur den bestehenden Kram von einem ui:composition-Tag, welches die Seite einleitet und beendet, umschliessen lassen. Es ist quasi nur copy+paste.
Klingt ja recht simpel, werd ich mir mal genauer anschauen! Hab teilweise aber auch Scriptlets mit in den JSPs, die ich dann aber vorher beseitigen sollte. (Wäre sowieso mal fällig! ;-))

Ein Wort noch zu JSF 2.0: Sicherlich erheblich besser als JSF 1.2, allerdings basiert seam noch auf JSF 1.2, und JSF 2.0 ist ziemlich exakt das, was JSF 1.2 in Zusammenspiel mit seam ist. Seam dürfte da die entscheidende Inspirationsquelle gewesen sein. Daher, wenn man seam benutzt, spricht nichts gegen JSF 1.2, im Gegenteil, es ist halt die Version, die da momentan standardmässig Verwendung findet. Die ganzen Mängel, die in JSF 2.0 behoben werden, behebt seam ebenso. Also keine Scheu vor der "alten" Versionsnummer.
Trifft das damit auch auf Spring Web Flow zu?
 

JanHH

Top Contributor
Keine Ahnung, aber ich vermute stark, nein. seam ist schon sehr auf JSF spezialisiert, Spring wohl eher nicht ;-).

Scriptlets in JSF-Seiten sind bäh, ja.. die Funktionalität sollte in die zugrundeliegenden Session-Beans ausgelagert werden.

Mit seam ist das wirklich alles sehr schön: Eine absolut klare Struktur der Anwendung (JSF-view -> Session-Beans -> Mode-Beans), quasi null Konfiguration per xml mehr (Stichwort faces-config), sondern alles im Java-Code übersichtlich mit Annotationen. Alles mehr oder weniger redundante fällt weg, man kann sich komplett auf die Funktionalität der Anwendung konzentrierenn.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Sinnvoll Einsatz von JSF mit Spring MVC? Frameworks - Spring, Play, Blade, Vaadin & Co 0
L Eigene Request und Router Objekte bei Einsatz von Spring und Maven sinnvoll? Frameworks - Spring, Play, Blade, Vaadin & Co 1
B Einsatz von Spring zusammen mit klassischem MVC + Swing Frameworks - Spring, Play, Blade, Vaadin & Co 6
M Partieller Einsatz von Spring Frameworks - Spring, Play, Blade, Vaadin & Co 5
8u3631984 Ist es möglich in Spring Entity generische Listen verwenden Frameworks - Spring, Play, Blade, Vaadin & Co 3
R Spring Boot Test Assertions mit Objekten Frameworks - Spring, Play, Blade, Vaadin & Co 6
8u3631984 Pfad zu Test Datei in application.yml in Spring Boot Test Frameworks - Spring, Play, Blade, Vaadin & Co 7
R Spring Boot sql Beziehungen Frameworks - Spring, Play, Blade, Vaadin & Co 12
8u3631984 Spring JPA Probleme beim SPeichern von Sets Frameworks - Spring, Play, Blade, Vaadin & Co 3
M Spring Boot 3 Datenbanken zur Laufzeit Verbinden Frameworks - Spring, Play, Blade, Vaadin & Co 5
8u3631984 Spring JDBC Probleme beim Spaltennamen Frameworks - Spring, Play, Blade, Vaadin & Co 3
LimDul Spring-Batches in Docker über Rest starten/verfolgen Frameworks - Spring, Play, Blade, Vaadin & Co 0
ExceptionOfExpectation In Meiner Spring-Boot Applikation verlangt die Datenbank Wert für eine ID Frameworks - Spring, Play, Blade, Vaadin & Co 5
H Spring Boot Applikation und JHM Benchmark sowie ContextConfiguration in H2 Tests ich bekomme es nicht hin Frameworks - Spring, Play, Blade, Vaadin & Co 2
ExceptionOfExpectation Tests in Spring-Boot Frameworks - Spring, Play, Blade, Vaadin & Co 4
R Eure Erfahrungen mit Primefaces und Spring - wer managed die Beans Frameworks - Spring, Play, Blade, Vaadin & Co 4
Avalon Get Request doppelt abfeuern ohne Post Redirect Get Pattern. Spring Boot Thymeleaf MVC Frameworks - Spring, Play, Blade, Vaadin & Co 12
thor_norsk Konfigurationsprobleme mit Spring Boot Frameworks - Spring, Play, Blade, Vaadin & Co 9
R Spring Boot Integration-testing mit Keycloak Frameworks - Spring, Play, Blade, Vaadin & Co 1
R Spring Boot Integration-testing mit Keycloak Frameworks - Spring, Play, Blade, Vaadin & Co 13
L Spring Data und Rest Controller? Frameworks - Spring, Play, Blade, Vaadin & Co 4
thor_norsk Spring Boot Fehler Frameworks - Spring, Play, Blade, Vaadin & Co 1
L Spring Data und Rest Conroller? Frameworks - Spring, Play, Blade, Vaadin & Co 4
thor_norsk Spring Boot und Docker Frameworks - Spring, Play, Blade, Vaadin & Co 5
B Spring Amazon-SP-Api Frameworks - Spring, Play, Blade, Vaadin & Co 3
8u3631984 Aktualisiere Spring Controller Frameworks - Spring, Play, Blade, Vaadin & Co 4
L Spring Data: Modellierung mit einer Embeddable bean Frameworks - Spring, Play, Blade, Vaadin & Co 2
D Spring Boot Test ob Validation geprüft wurde Frameworks - Spring, Play, Blade, Vaadin & Co 8
K Spring Boot OneToMany Frameworks - Spring, Play, Blade, Vaadin & Co 6
8u3631984 Spring Boot Docker Image erstellen und mit docker-compose konfigurieren Frameworks - Spring, Play, Blade, Vaadin & Co 1
M Wann Spring Batch nutzen? Frameworks - Spring, Play, Blade, Vaadin & Co 1
P Spring Hessian Remote Beispiel Frameworks - Spring, Play, Blade, Vaadin & Co 20
8u3631984 Spring 2.7.8 Info Enpoint nicht zuerreichen Frameworks - Spring, Play, Blade, Vaadin & Co 1
gradlew.bat spring-boot:run funktioniert nicht Frameworks - Spring, Play, Blade, Vaadin & Co 4
Zrebna Spring Boot/Thymeleaf: Bestätigungsemail senden. Frameworks - Spring, Play, Blade, Vaadin & Co 2
Zrebna Spring - Thymeleaf: Wieso wird gem. Fallunterscheidung entsprechende View nicht geladen? Frameworks - Spring, Play, Blade, Vaadin & Co 3
Dimax Spring UsernameNotFoundException(msg); auf der View msg ausdrücken Frameworks - Spring, Play, Blade, Vaadin & Co 1
Dimax Spring UsernameNotFoundException(Message) auf der View Message ausdrücken Frameworks - Spring, Play, Blade, Vaadin & Co 2
B Spring Boot und JPA Error creating bean Frameworks - Spring, Play, Blade, Vaadin & Co 24
R Spring Security: Wie kommt 'UserDetails' an Username und Passwort ran? Frameworks - Spring, Play, Blade, Vaadin & Co 6
R Spring Security: Wie den User dynamisch authentifizieren? Frameworks - Spring, Play, Blade, Vaadin & Co 8
R Spring Security: Authentication & Permissions Frameworks - Spring, Play, Blade, Vaadin & Co 4
R Spring Boot: Warum soll PasswordEncoder in einer neuen Methode definiert sein? Frameworks - Spring, Play, Blade, Vaadin & Co 1
8u3631984 Cross-Origin beim Abrufen von Spring Endpoint Frameworks - Spring, Play, Blade, Vaadin & Co 1
D Spring Boot und Microservices Frameworks - Spring, Play, Blade, Vaadin & Co 1
M Spring Boot additional Datasource for a single entity Frameworks - Spring, Play, Blade, Vaadin & Co 0
T Spring Resourcen Ordner ermitteln Frameworks - Spring, Play, Blade, Vaadin & Co 5
B Spring JPA und Repository Frameworks - Spring, Play, Blade, Vaadin & Co 12
D Mapstruct Dependency Injection funktioniert nicht mit Spring Frameworks - Spring, Play, Blade, Vaadin & Co 15
Avalon Wie sieht bei Euch das Deployment einer Spring Boot Anwendung aus? Frameworks - Spring, Play, Blade, Vaadin & Co 4
M Threads in Spring Boot Frameworks - Spring, Play, Blade, Vaadin & Co 7
W DI-Problem in Spring Boot Frameworks - Spring, Play, Blade, Vaadin & Co 4
T Spring Boot: Was bewirkt parent in maven genau? Frameworks - Spring, Play, Blade, Vaadin & Co 4
T Spring Security: Run-as replacement Einsatzbereich? Frameworks - Spring, Play, Blade, Vaadin & Co 1
OnDemand Vaadin+Spring Boot erster Seitenload nach Neustart endlos Frameworks - Spring, Play, Blade, Vaadin & Co 0
doncarlito87 Wie erhalte ich ein JSON aus eine NativeQuery (Spring Boot)? Frameworks - Spring, Play, Blade, Vaadin & Co 8
Avalon @Query Select Abfrage liefert falsche Werte (Spring Boot, JPA, Hibernate) Frameworks - Spring, Play, Blade, Vaadin & Co 3
Avalon Erstellung Dockerimage mit spring-boot:build-image in Spring Boot mit Umgebungsvariablen Frameworks - Spring, Play, Blade, Vaadin & Co 0
N Spring Integration - Logging Frameworks - Spring, Play, Blade, Vaadin & Co 7
D Spring Boot Field Injection in MapStruct Frameworks - Spring, Play, Blade, Vaadin & Co 5
D Spring Anfänger benötigt Hilfe Frameworks - Spring, Play, Blade, Vaadin & Co 9
OnDemand Spring Boot seltsame Logeinträge: Manipulationsversuche? Frameworks - Spring, Play, Blade, Vaadin & Co 2
D Spring Date keine neue Tabelle fuer Attribut Frameworks - Spring, Play, Blade, Vaadin & Co 1
T Spring Security Config File anpassen Frameworks - Spring, Play, Blade, Vaadin & Co 1
8u3631984 Spring Cloud : Resttemplate mit Loadballancer Frameworks - Spring, Play, Blade, Vaadin & Co 11
Dimax Spring resource not found Frameworks - Spring, Play, Blade, Vaadin & Co 2
M Spring MongoDB unique index Frameworks - Spring, Play, Blade, Vaadin & Co 3
M Spring Entity testen Frameworks - Spring, Play, Blade, Vaadin & Co 1
M Spring Entity testen Frameworks - Spring, Play, Blade, Vaadin & Co 5
Dimax Spring App Probleme beim Ausführen auf dem Tomcat Server Frameworks - Spring, Play, Blade, Vaadin & Co 1
D Spring WebFlux Cors konfigurieren Frameworks - Spring, Play, Blade, Vaadin & Co 1
Dimax Schöne View mit anchor scrolling in Spring Frameworks - Spring, Play, Blade, Vaadin & Co 2
Dimax Spring JPA Multiple Keys Frameworks - Spring, Play, Blade, Vaadin & Co 3
S Spring Security mit oauth2 in lokaler Konfiguration principal mocken Frameworks - Spring, Play, Blade, Vaadin & Co 0
D Spring Boot Mile Stone und Snapshot Versionen Frameworks - Spring, Play, Blade, Vaadin & Co 2
OnDemand Spring Boot Exception Body Frameworks - Spring, Play, Blade, Vaadin & Co 2
D Was ist das Framework "Spring"? Frameworks - Spring, Play, Blade, Vaadin & Co 1
M Spring Unit/Integrations Testing Frameworks - Spring, Play, Blade, Vaadin & Co 3
D Spring Unit Test: UnsatisfiedDependencyException: Error creating bean with name Frameworks - Spring, Play, Blade, Vaadin & Co 2
H Resource Liste Lazy Autowired Spring Context Frameworks - Spring, Play, Blade, Vaadin & Co 2
M Java Spring Security Frameworks - Spring, Play, Blade, Vaadin & Co 5
M Spring Security Login with Credentials Frameworks - Spring, Play, Blade, Vaadin & Co 0
N Spring Boot - Overkill für private Projekte? Frameworks - Spring, Play, Blade, Vaadin & Co 3
krgewb Spring und GWT - & wird zu & amp; Frameworks - Spring, Play, Blade, Vaadin & Co 2
K Migration eines internen Frameworks zu Spring:Boot Frameworks - Spring, Play, Blade, Vaadin & Co 0
OnDemand JPA/Spring Repository Like Suche leeres Ergebnis Frameworks - Spring, Play, Blade, Vaadin & Co 0
Z Hibernate & Postgres in Spring Boot (Syntaxprobleme) Frameworks - Spring, Play, Blade, Vaadin & Co 2
Z Spring Boot mit JPA;, Hibernate, Rest & Lombok Frameworks - Spring, Play, Blade, Vaadin & Co 8
M Spring Initializer - Webservices Frameworks - Spring, Play, Blade, Vaadin & Co 0
D Spring Hateoas Frameworks - Spring, Play, Blade, Vaadin & Co 1
ma095 Spring und Postgresql Errors Frameworks - Spring, Play, Blade, Vaadin & Co 4
OnDemand Spring+Vaadin App startet nicht Frameworks - Spring, Play, Blade, Vaadin & Co 1
OnDemand Spring Request externe API SSL Error Frameworks - Spring, Play, Blade, Vaadin & Co 7
OnDemand Spring Repo speichert, aber es kommt in der DB nicht an Frameworks - Spring, Play, Blade, Vaadin & Co 3
Dimax Im Spring ,Mysql-Funktion aufrufen Frameworks - Spring, Play, Blade, Vaadin & Co 2
OnDemand Spring Security/Boot/Vaadin Cookie Problem bei iFrame Frameworks - Spring, Play, Blade, Vaadin & Co 4
OnDemand Spring Boot: Feld ignorieren Frameworks - Spring, Play, Blade, Vaadin & Co 3
8u3631984 Spring + Thymleaf : Checkbox Object mappen Frameworks - Spring, Play, Blade, Vaadin & Co 0
N Buch zum Spring Framework bzw. Spring Boot Frameworks - Spring, Play, Blade, Vaadin & Co 3
OnDemand Jasypt Spring Boot HIbernate wie komme ich an den Key? Frameworks - Spring, Play, Blade, Vaadin & Co 4

Ähnliche Java Themen

Neue Themen


Oben