![Page 1: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/1.jpg)
Vortrag
Thema: Apache Struts + Tiles
Mohamed Haji | Julian Cordes | Robin Röttger | Web 2.0 | WS 2014/20151
![Page 2: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/2.jpg)
Inhalte
1. Einleitung
2. Grundlegendes mit Struts
3. Apache Tiles (mit Struts)
4. Praktikum
5. Diskussion05/11/142
![Page 3: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/3.jpg)
Einleitung
3
» Struts ist ein Framework für Java-Webanwendungen !» Es setzt das MVC 2-Muster um !» Wurde im Jahr 2000 gegründet !» Entwicklung der Version 1.x wurde eingestellt und
wird nicht mehr länger unterstützt !
05/11/14
Was ist Struts?
![Page 4: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/4.jpg)
Einleitung
4
Wofür wird Struts verwenden?
Folgende Probleme werden von Struts adressiert: !» Aufrufen der richtigen Klasse abhängig von der URL » mehrsprachige Webseiten » die Überprüfung von Formulareingaben » die Konvertierung von Formularfeldern in Datentypen » die Anzeige von Fehlermeldungen bei Fehleingaben !
05/11/14
![Page 5: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/5.jpg)
Einleitung
5
» Model – beinhaltet die Geschäftslogik – ist kein Bestandteil von Struts
» View – übernehmen JavaServer Pages. – bestehen aus HTML-Tags und eigenen Struts-Tags
» Controller – Anfragen werden zu Action-Klassen weitergeleitet – Weiterleitungen werden in XML Datei definiert
MVC-Architektur angewandt in Struts
05/11/14
![Page 6: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/6.jpg)
Einleitung
6
MVC-Architektur
Quelle: http://www.journaldev.com/2134/struts-2-tutorial-for-beginners-hello-world-struts-application
05/11/14
![Page 7: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/7.jpg)
Inhalte des Vortrags
7
1. Einleitung
2. Grundlegendes mit Struts
3. Apache Tiles (mit Struts)
4. Praktikum
5. Diskussion05/11/14
![Page 8: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/8.jpg)
Grundlegendes mit Struts
8
Resultpages
» Können aus diversen Template-Engines bestehen - statisches HTML oder JSPs - Freemarker - Velocity
» Sie enthalten die View der Anwendung » Können Struts-Tags enthalten » Struts-Tags sind JSP-Custom-Tags
05/11/14
![Page 9: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/9.jpg)
Grundlegendes mit Struts
9
Beispiel für eine Resultpage
<%@$page$language="java"$contentType="text/html;-charset=US4ASCII"$$$$$pageEncoding="US4ASCII"%>$<!DOCTYPE$html$PUBLIC$"C//W3C//DTD$HTML$4.01$Transitional//EN"$"http://www.w3.org/TR/html4/loose.dtd">$<%CC$Using$Struts2$Tags$in$JSP$CC%>$<%@$taglib$uri="/struts4tags"$prefix="s"%>$<html>$<head>$<meta$httpCequiv="Content4Type"$content="text/html;-charset=US4ASCII">$<title>Login$Page</title>$</head>$<body>$<h3>Welcome$User,$please$login$below</h3>$<s:form$action="login">$$$$$<s:textfield$name="name"$label="User-Name"></s:textfield>$$$$$<s:textfield$name="pwd"$label="Password"$type="password"></s:textfield>$$$$$<s:submit$value="Login"></s:submit>$</s:form>$</body>$</html>!
05/11/14
![Page 10: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/10.jpg)
Grundlegendes mit Struts
10
Beispiel für eine Resultpage
<%@$page$language="java"$contentType="text/html;-charset=US4ASCII"$$$$$pageEncoding="US4ASCII"%>$<%@$taglib$uri="/struts4tags"$prefix="s"%>$<!DOCTYPE$html$PUBLIC$"G//W3C//DTD$HTML$4.01$Transitional//EN"$"http://www.w3.org/TR/html4/loose.dtd">$<html>$<head>$<meta$httpGequiv="Content4Type"$content="text/html;-charset=US4ASCII">$<title>Welcome$Page</title>$</head>$<body>$<h3>Welcome$<s:property$value="name"></s:property></h3>$</body>$</html>!
05/11/14
![Page 11: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/11.jpg)
Grundlegendes mit Struts
11
Action-Klassen
» Action-Klassen sind der Controller der Architektur
» Verarbeiten Requests in der Execute Methode
» Können sowohl über die struts.xml als auch über Java Annotations (@action) deklariert
» Können Java Bean mit Getter und Setter enthalten -> Struts übernimmt dabei das Mapping zwischen Request-Parametern und Klassenvariablen
05/11/14
![Page 12: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/12.jpg)
Grundlegendes mit Struts
12
LoginAction Klasse
05/11/14
public!class!LoginAction!implements!Action!{!! !!!!!private!String!name;!!!!!private!String!pwd;!!!!!!!!!!public!String!execute()!throws!Exception!{!!!!!! !!!!!!!!!if("admin".equals(getName())!&&!"admin".equals(getPwd()))!{!!!!!!!!!! return!SUCCESS;!!!!!!!!!}!else!{!!!!!!!!!! return!"ERROR";!!!!!!!!!}!!!!!}!!!!!!//Java!Bean!to!hold!the!form!parameters!!!!!public!String!getName()!{!!!!!!!!!return!name;!!!!!}!!!!!public!void!setName(String!name)!{!!!!!!!!!this.name!=!name;!!!!!}!!!!!…!!!!!!!}!
![Page 13: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/13.jpg)
Grundlegendes mit Struts
13
struts.xml
<?xml&version="1.0"&encoding="UTF(8"?>&&&<!DOCTYPE&struts&PUBLIC&&&&&"B//Apache&Software&Foundation//DTD&Struts&Configuration&2.3//EN"&&&&&"http://struts.apache.org/dtds/strutsB2.3.dtd">&<struts>&&&<package&name="user"&namespace="/User"&extends="struts(default">&&&&&<action&name="home">&&&&&&&&&<result>/login.jsp</result>&&&&&</action>&&&&&<action&name="login"&class="com.journaldev.struts2.action.LoginAction">&&&&&<result&name="SUCCESS">/welcome.jsp</result>&&&&&<result&name="ERROR">/error.jsp</result>&&&&&</action>&&&</package>&&&</struts>!
05/11/14
![Page 14: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/14.jpg)
Grundlegendes mit Struts
14
Finale Resultat
05/11/14
![Page 15: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/15.jpg)
Inhalte des Vortrags
15
1. Einleitung
2. Grundlegendes mit Struts
3. Apache Tiles (mit Struts)
4. Praktikum
5. Diskussion05/11/14
![Page 16: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/16.jpg)
Apache Tiles (mit Struts)
16
Grundlegendes zu Tiles
» Template-Framework für J2EE
» Basiert auf dem Composite Pattern
!
» Vereinfacht die Entwicklung von User-Interfaces
» Wird oft in Kombination mit anderen Frameworks wie
Struts oder Spring verwendet
05/11/14
![Page 17: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/17.jpg)
17
HEADER
MENU CONTENT PAGE 1
FOOTER
CONTENT PAGE 2
Apache Tiles (mit Struts) Composite View Pattern in Tiles
05/11/14
![Page 18: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/18.jpg)
Apache Tiles (mit Struts)
18
tiles.xml
» Definition eines Grundlayouts
» Üblich: Header, Menü, Body und Footer
» Statische Elemente als einzelne JSP
!
» Die spezifischen Content-Seiten werden von dem
Grundlayout „extended“
» Spezifische Bereiche definiert mit eigener JSP
05/11/14
![Page 19: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/19.jpg)
Apache Tiles (mit Struts)
19
tiles.xml - Beispiel
05/11/14
![Page 20: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/20.jpg)
Apache Tiles (mit Struts)
20
baseLayout.jsp
05/11/14
![Page 21: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/21.jpg)
Apache Tiles (mit Struts)
21
Mapping der URLs durch Struts
» Mapping URLs Content Pages
– Ablauf per Struts-Action-Klassen
– einfache und komplexe Steuerungen möglich
!
» Mapping der URLs zu Action-Klassen in struts.xml
» Einfache oder komplexe Anwendungsfälle abgedeckt
05/11/14
![Page 22: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/22.jpg)
Apache Tiles (mit Struts)
22
struts.xml - Beispiel mit Tiles
05/11/14
localhost:8080/TestProject/page1.action
![Page 23: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/23.jpg)
Apache Tiles (mit Struts)
23
Action-Klasse MenuAction
05/11/14
![Page 24: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/24.jpg)
Ende des Vortrags
Offene Fragen?
24 05/11/14
![Page 25: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/25.jpg)
Inhalte des Vortrags
25
1. Einleitung
2. Grundlegendes mit Struts
3. Apache Tiles (mit Struts)
4. Praktikum
5. Diskussion05/11/14
![Page 26: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/26.jpg)
Inhalte des Vortrags
26
1. Einleitung
2. Grundlegendes mit Struts
3. Apache Tiles (mit Struts)
4. Praktikum
5. Diskussion05/11/14
![Page 27: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/27.jpg)
Diskussion
27 05/11/14
![Page 28: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/28.jpg)
Ende des VortragsLiteratur
» http://www.mkyong.com/struts/struts-tiles-framework-example/
» http://www.tutorialspoint.com/struts_2/struts_tiles.htm
» http://tiles.apache.org/2.2/framework/tutorial/index.html
» „Struts 2 in action“ (Brown, Stanlick, Davis) [2008]
28 05/11/14
![Page 29: Thema: Apache Struts + Tiles - fh-muenster.de...Einleitung 3 » Struts ist ein Framework für Java-Webanwendungen ! » Es setzt das MVC 2-Muster um ! » Wurde im Jahr 2000 gegründet](https://reader035.vdokument.com/reader035/viewer/2022063015/5fd2da97b8967158a83b1f49/html5/thumbnails/29.jpg)
Vielen Dank für Ihre Aufmerksamkeit!
29 05/11/14