Lerngruppe für Tapestry 5

Java.getSkill()

Aktives Mitglied
Hallo,

Projekt befindet sich nun hier: tapestry5start - Project Hosting on Google Code

Ich spiele schon seit einiger Zeit mit dem Gedanken mir das Framework Tapestry 5 genauer anzuschauen und ein paar kleinere Projekte damit umzusetzen.

Ich könnte jetzt natürlich da alleine loslegen und mir Tutorials, Artikel und Bücher durchlesen, aber das wäre viel zu langwierig und langweilig! In einer kleinen Projektgruppe, die das gleiche Ziel und gleichen Wissensstand hat, ist so etwas wesentlich gemütlicher und es wird effektiver gelernt bzw. code produziert! Bei Problemen kann auch sofort gefragt werden.

Deswegen hier die Frage, wer Interesse hätte gemeinsam in die Materie einzusteigen und über einen längeren Zeitraum sein Wissen bezüglich Tapestry 5 auch zu vertiefen. Nach dem Motto: 2+ Gehirne denken besser.

Ziel: Nach einigen Monaten genug Erfahrung besitzen um konkrete Web Applikationen selber entwickeln zu können. (ja ich weiß, das kann vieles bedeuten)

Voraussetzung:
+ gute Kenntnisse in Java
+ Erfahrung mit Webdevelopment (JEE, JSP, AJAX... sollte kein Fremdwort sein)
+ Nötige Zeit mitbringen
+ Bereitschaft zu lernen und auch Wissen zu teilen (divide et impera)
+ Kommunikationsbereitschaft

Kommunikation kann über ein Forum, Skype, ICQ oder sonst ein Chatprogramm ablaufen. Treffen in Skype oder TS mit Mikrofon & Headset auch möglich.
Den Einstieg und Hello World in Tapestry hat jeder nach paar Stunden auch alleine geschafft. Wenn sich ein paar Lernbereite finden, dann einigen wir uns auf ein grösseres begleitendes Endprojekt mit Milestones :rtfm: welches dann auch umgesetzt wird.

Wenn jemand nun die Lust verspührt den Frühling mit Tapestry zu verbringen :bloed: und die Vorteile einer Gruppe genießen möchte, dann hier melden bzw. weitere Fragen stellen oder eine private Nachricht schicken.
 
Zuletzt bearbeitet von einem Moderator:

Java.getSkill()

Aktives Mitglied
2 Lernbereite haben schon Kontakt aufgenommen und würden sich auch gerne in nächster Zeit mit Tapestry beschäftigen.

Es ist alles ernst gemeint und wird über mehrere Monate dauern.
Den Anfang schafft natürlich jeder ohne Probleme. Ein Tutorial oder Buch ermöglichen "Hello World", aber mit der Zeit werden die Dinge wahrscheinlich nicht selbsterklärend sein und da ist es nice, wenn man seinen Nachbarn schnell Mal fragen kann, bevor 5h im Internet mit Suche zugebracht werden müssen.

Ein simpler Ideenaustausch zu konkreten Problemen, wo der eigene Horizont erweitert wird, ist schon die Teamarbeit wert.


Also traut euch! :)
Auch erfahrene Tapestrybenutzer sind natürlich herzlich eingeladen. Man lernt nie aus!
 

adalse0

Mitglied
Hi,

wuerde mich grundsaetzlich schon interessieren,
da ich mich einigermassen mit Tapestry 4 auskenne
und mal gerne die Vorteile von Version 5 sehen wuerde.

Mein Problem ist nur dass ich momentan eigentlich anderweitig genug zu tun hab...

Werd mir evtl. ueber das Osterwochende mal ein Hello World Tutorial oder so anschauen.

Zu Version 4 hab ich uebrigens Teilweise das Buch "Enjoy Web Development with Tapestry" (oder so aehnlich) gelesen und fand das echte gut.

Edit:

Bin jetzt ein bisschen angefixt und ueberleg grade hin und her ob ich nicht noch heute anfang ne Umgebung einzurichten.
Allerdings schreckt mich jetzt maven tierisch ab:

Ich komm aus der ant Welt und hab von maven garkeine Ahnung ...

Edit die 2te:

Konnte mich jetzt durchringen maven zu installieren und,
hab den Befehl aus dem Tutorial auf tapestry.apache.org angeworfen.

Leider schepperts hier gleich:

Code:
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Error creating from archetype

Embedded error: The META-INF/maven/archetype.xml descriptor cannot be found.
[INFO] ------------------------------------------------------------------------
[INFO] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: Error creating from arch
etype
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defa
ultLifecycleExecutor.java:719)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandalone
Goal(DefaultLifecycleExecutor.java:569)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(Defau
ltLifecycleExecutor.java:539)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHan
dleFailures(DefaultLifecycleExecutor.java:387)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegmen
ts(DefaultLifecycleExecutor.java:284)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLi
fecycleExecutor.java:180)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
        at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:6
0)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
        at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
        at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)

        at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.maven.plugin.MojoExecutionException: Error creating from a
rchetype
        at org.apache.maven.archetype.mojos.MavenArchetypeMojo.execute(MavenArch
etypeMojo.java:249)
        at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPlugi
nManager.java:490)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defa
ultLifecycleExecutor.java:694)
        ... 17 more
Caused by: org.apache.maven.archetype.old.ArchetypeDescriptorException: The META
-INF/maven/archetype.xml descriptor cannot be found.
        at org.apache.maven.archetype.old.DefaultOldArchetype.createArchetype(De
faultOldArchetype.java:187)
        at org.apache.maven.archetype.mojos.MavenArchetypeMojo.execute(MavenArch
etypeMojo.java:230)
        ... 19 more
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1 second
[INFO] Finished at: Fri Apr 02 02:54:51 CEST 2010
[INFO] Final Memory: 8M/20M
[INFO] ------------------------------------------------------------------------
C:\workspace>


Hab heute keine grossartige Lust mehr daran rumzubasteln,
geh jetzt lieber ins Bett.
 
Zuletzt bearbeitet:

pobv

Neues Mitglied
Bei meinem ersten Gehversuch in Tapestry 5 empfand ich das Erstellen auch als unnötig schwer. Die Webseite hatte mir damals dabei auch nicht besonders geholfen. Habe das glaube ich mit Hilfe einer externen Seite gelöst: bbWebCraft: Task 1 - Create a skeleton Tapestry 5 project and run it.

Zu Büchern:
Habe das erste T5 Buch (Tapestry 5: Building Web Applications) mir gekauft und darin etwas gelesen... war relativ enttäuscht, da es sehr oberflächlich ist und einem keinen tieferen Einblick in das Framework vermittelt. Inzwischen gibt es ja ein weiteres Buch, wobei das Inhalsverzeichnis schon besser aussieht. Ein Buch ist aber meines Erachtens nicht zwingend nötig, jedoch könnte es etwas schneller Licht ins "Doku-Chaos" von T5 bringen ;)
 
Zuletzt bearbeitet:

ARadauer

Top Contributor
Ich beschäftige mich auch seit einiger Zeit mit Tapestry. Tapestry ist bei uns in der Firma die neue standard Technologie für Webanwendungen.

Gewisse dinge fühlen sich noch einwenig fremd und ungewohnt an, aber ich denke das wird schon mit der Zeit...

Zu Büchern:
Habe das erste T5 Buch (Tapestry 5: Building Web Applications) mir gekauft und darin etwas gelesen... war relativ enttäuscht, da es sehr oberflächlich ist und einem keinen tieferen Einblick in das Framework vermittelt. Inzwischen gibt es ja ein weiteres Buch, wobei das Inhalsverzeichnis schon besser aussieht. Ein Buch ist aber meines Erachtens nicht zwingend nötig, jedoch könnte es etwas schneller Licht ins "Doku-Chaos" von T5 bringen ;)

hab ich auch so empfunden... das ist besser Tapestry 5: Die Entwicklung von Webanwendungen mit Leichtigkeit!
 

ARadauer

Top Contributor
@adalse0 was genau hast du eingegeben... ich glaube die haben da was am archetype geändert. Beim mir hats vor einiger Zeit auf anhieb funktioniert.
 

Java.getSkill()

Aktives Mitglied
Die Entwicklungsumgebung aufzusetzen ist nicht gerade trivial, vorallem da nicht alle Versionen der eingesetzten tools sofort mit einander laufen. Habe mich selber auch einige Stunden durchlesen dürfen, wollte es aber auch verstehen, bevor mein erstes Hello World lief.

Nochmal aufsetzen: 10 Minuten Aufwand.
Ich wundere mich wirklich warum sie nicht auf der tutorialseite eine einfache Anleitung gestellt haben, denn wenn man weiß wie es läuft, sind es nur ein paar Klicks. Überhaupt kein Aufwand im 2. Versuch.

@adalse0, ich schreibe heute Abend wie ich das aufgesetzt habe. Bei mir hat Maven alle benötigten Dependencies später runtergeladen, nachdem ich manuell herumpfuschen wollte :)

Das Buch, welches ARadauer gelinkt hat, werde ich heute kaufen. Wäre nice, wenn uns ein paar erfahrenere Tapestryuser wie ARadauer mit Rat und Tat zur Seite stehen würden:rtfm:
 

Java.getSkill()

Aktives Mitglied
Hallo,

meine Arbeitsumgebung(zumindest läuft es bei mir so):

1) JDK installieren und JDK Systemvariable setzen
Ich würde neben PATH auch JAVA_HOME setzen

2) Eclipse IDE for JEE (193MB) downloaden

3) WTP Web Tools Platform über Eclipse update holen
WTP Updates

4) .tml mit XML Editor verbinden
Im Menu WINDOW > Preferences klicken
General > Content Types
Text > XML
add .tml

damit eure tml (html) Seiten auch mit dem XML Editor gehen

5) Maven updaten (erstellt die Projektstruktur)
Index of /sites/m2e

6) Jetty Server updaten
run-jetty-run - Revision 56: /trunk/updatesite


New Project>Maven Project nehmen
irgendwann kommt ein Filter welchen Archetyp man möchte. Einfach mal "tap" eingeben, dann bleiben nur die tapestry Dinger über. QUICKSTART wählen. group id, artefact id ist egal.

Wenn man das ganze starten will, dann auf "RUN CONFIGURATION" ( der grüne Startbutton), new jetty erstellen und den port beim HTTPS löschen, sonst wird nach einer .keystore datei gefragt.

jetty fragt auch nach dem ordner, wo sich die .tml dateien aufhalten. müsste src/main/webapp sein
 

adalse0

Mitglied
Also ich hab als ich das probiert hab einfach die aktuelle maven version installiert und dann mit den parametern aufgerufen,
wie sie auf der tapestry seite standen.

Eigentlich hiess es auf der tapestry seite ja,
dass man sich maven in version 2.0.8 oder so installiern sollte...

Hoffe dass ich morgen Zeit hab,
dann werd ich nochmal ein bisschen rumtuefteln.
 

Java.getSkill()

Aktives Mitglied
versuchs mit meiner Anleitung.

Ich habe auch selber erst alles manuell gemacht und wollte in der cmd-shell Sachen ausführen. Jetzt kannst du alles innerhalb Eclipse machen. Maven habe ich nur für 2 Klicks gebraucht und zwar um nur die Ordner/Datei Struktur für Tapestry zu erstellen.
 

Rydl

Bekanntes Mitglied
die maven version ist egal. man kann sich die installation den run-jetty-plugins auch sparen und die applikation direkt über maven starten. das geht so:

- rechts-klick auf die pom.xml des web-projekts
- "Run As"
- "Maven Build..." (der mit den punkten)
- dann in der maske unter "goals" eintragen: clean jetty:run

manchmal funktioniert das plugin nicht so gut mit multi-module projekten, dann hilft es "resolve workspace artifacts" auszuschalten.
 

adalse0

Mitglied
Vielen Dank,
aus eclipse heraus hat alles funktioniert.

Die Projektstruktur wurde erzeugt und benoetigten libs sind auch da.

Wenn alles klappt ist maven schon ne feine Sache :)
 

Java.getSkill()

Aktives Mitglied
push

das ganze ist natürlich aktuell. Für den Anfang könnte man ja gemeinsam an einem kleinen Projekt arbeiten. Formulare, XML, Datenbanken oder ähnliches. Pizzabestellservice, Applikation für eine Bibliothek :)

gogo melden
 

number8

Aktives Mitglied
Wenn ich Netbeans nutze, dann erstelle ich ein Tapestry-Projekt als normale Webanwendung - kein Maven.
Unter Eclipse dagegen nutze ich Maven und das Jetty-Plugin wegen dem Live-Class Reloading. Dort kann man außerdem auch die tapestry-taglib einbinden (siehe Tapestry-Wiki).
Ansonsten trete ich gerne der Gruppe bei, da wir in der Firma ein großes Tapestry Projekt am Laufen haben.
 

Rydl

Bekanntes Mitglied
mixins kann man nicht auf felder binden, mixins erweitern komponenten. versuch lieber das mixin dem beaneditor direkt zuzuweisen.
was willst du denn erreichen? ...vielleicht gibt's einen anderen weg.
 

reinsle

Mitglied
Hy zusammen,

habt ihr schon angefangen, oder seit ihr noch in den Vorbereitungen? Wenn ihr noch "Platz" habt, währe ich auch gern mit dabei.

Robert
 

number8

Aktives Mitglied
@ARadauer

Java:
<t:beaneditform object="book">
      	<p:price>
      		<t:textfield value="book.price" t:mixins="testmixin"/>
      	</p:price>
</t:beaneditform>

???
Mehr fällt mir im Moment auch nicht ein.
 

Java.getSkill()

Aktives Mitglied
Wie die Zeit doch verfliegt.

Ab Anfang nächster Woche geht es dann konkret los und ich werde auch noch in anderen Foren das ankündigen. Jeder der Tapestry lernen und nach einiger Zeit auch ein grösseres Projekt umsetzen möchte, kann mitmachen.

Paar Rahmenbedingungen:
- Tapestry 5.1 + Maven + Hibernate(mysql,postgresql,hsqldb) + Subversion (homogene Entwicklungsumgebung )


- Schriftliche Kommunikation läuft über ein Forum. Skype/Icq zum schnell jemanden anschreiben und TeamSpeak/Skype mit Headset zum Reden
Es wird immer wieder fixe Termine geben, wo wir uns treffen können und paar Weisheiten über Tapestry austauschen.

- Interesse und Zeit wöchentlich über längeren Zeitraum an verschiedenen praktischen Aufgaben zu arbeiten um Tapestry zu lernen
Learning by doing: Nach der Einarbeitungsphase gibt es verschiedene praktische Aufgaben mit Tapestry zu lösen:

Also Standardanwendungen wie Pizzabestellservice, onlineterminplaner/notizblock oder Videothekverwaltungsapplikation um sich einfach mit Formularen, Lokalisierung, Ajax, Komponenten, Mixins, Datenbanken und überhaupt mit dem Framework zu beschäftigen. Dabei arbeiten wir alle an der gleichen Aufgabe bzw. Aufgabenpool und jeder darf sich mal alleine austoben. Bei Fragen einfach ins Forum oder andere Kommunikationsmöglichkeit wählen um Kontakt aufzunehmen. Wenn jemand die Lösung schon hat, dann kann er sie online stellen und kommentieren, damit der Rest es versteht und dabei was lernt. Synergieeffekte nutzen und sicher einiges an Nerven und Zeit sparen. Das ist kein Wunschkonzert wo jeder das programmiert, was ihm in den Sinn kommt, sondern es wird planmäßig vorgegangen um so effektiver den "tapestrystoff" schneller abzudecken. Das nebenbei jeder seine eigenen Geschichten entwickeln und dazu Fragen stellen kannn ist natürlich auch klar.


Wer nun mitmachen möchte, bitte hier melden oder mir nochmal eine Nachricht schicken. Es können sowohl Anfänger wir erfahrene Tapestry Entwickler mitmachen, denn nach kurzer Zeit wird sich das Wissen und Niveau angleichen.

Vielleicht bekommen wir hier bei java-forum ein "Projektforum" ansonten stelle ich Eines online.

edit: Vorschläge, Anregungen einfach posten. Haben ja das gleiche Ziel :)
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
A JSF Suche Beispiel für Primefaces Tree als Navigation Web Tier 3
S Seite nur aufrufbar machen für eingeloggte User Web Tier 1
R JavaScript für Java Enterprise Entwickler Web Tier 1
G JSF Webanwendung Editor für JSON gesucht Web Tier 1
S JSP Hm... Vorlage für Java Basierende Webseite? Web Tier 0
J Funktion für AJAX - Problem mit Return Web Tier 14
D Servlet 1 Servlet für alles - Wie Cookies per Ajax? Web Tier 1
R JSF Zugriff für Helpdesk-Mitarbeiter Web Tier 15
I Autocomplete Google Maps für JSF Web Tier 0
W Servlet SPEICHERN UNTER-Dialog für mehrere Dateien Web Tier 4
M JSF Framework für User Management etc. Web Tier 0
D Welches Webframework für REST geeignet Web Tier 1
L java.io.NotSerializableException für domain Objekte - Design Problem? Web Tier 12
M Converter für SelectOneMenu Web Tier 3
J eigene taglib für jsf 2.0 schreiben Web Tier 21
S Empfehlung für stateless Webframework Web Tier 2
J mögliche 'eigene' Konfigurationen für die Web.XML auflisten lassen Web Tier 4
H Singleton für In-Memory-Caching in WebApp Web Tier 4
F Wo und wie Daten die für alle Benutzer bestimmt sind verwalten Web Tier 4
S beste Preis/Leistung für Server Web Tier 3
H Relativer Pfad für XML-Datei in JSP-Anwendung Web Tier 3
S Welcher ansatz für Web Application + Web Service Web Tier 5
M JSF Converter für String to List<String> Web Tier 2
R Servlet Resource laden für SMTP - Session Web Tier 4
T JSF Eigener Converter wird nur für Eingabekomponenten aufgerufen? Web Tier 3
O Welche JSF Implementation ist am besten für mich geeignet ? Web Tier 3
T Sprachenauswahl für Projekt Web Tier 3
M JSF Komponentenframework für Web/JSF? Web Tier 7
M JSF Simple Testklasse für Button - MethodNotFoundException? Web Tier 6
B JSF JSF1.1 @Tomcat 5.5 für ein neues Projekt Web Tier 18
I Anwendungsfälle für OO Vererbungshierarchien bei Webapps Web Tier 4
D Struts Mehrsprachigkeit in textfield für key ja, aber für label nein? Web Tier 4
M Classpath für JPA in Tomcat Webapp: Wie konfigurieren? Web Tier 4
S ClassPath für Servlet Web Tier 3
J Welches Framework für Webentwicklung? Web Tier 13
T Plugins für Eclipse Web Tier 9
T JSF Zwei Listen/Vectoren für f:selectItems verknüpfen - möglich? Web Tier 2
ruutaiokwu JSF nur für die präsentation verwenden? Web Tier 4
S Ein ControllerServlet für andere Servlets - Sinnvoll oder nicht? Web Tier 34
C Webspace bzw. Server für GWT Web Tier 5
O Testframework für Webanwendung? HTMLUnit? Web Tier 3
C CMS für GWT Anwendung Web Tier 2
T SVG für JSF2 Web Tier 8
T Template für die ganze Seite Web Tier 6
Spin JSF oder PHP für Web Web Tier 4
M Java Framework für größere Projekte verwenden Web Tier 5
Z Erlaubte Klassen für h:selectOneListbox Iteration? Web Tier 2
R Exception? Was für ein Fehler? Web Tier 3
J DataScroller: rowCount für Folgeseiten übernehmen Web Tier 2
M Tomcat - Mehrere Verzeichnisse für die jsp Web Tier 12
N JMX MBean für JBoss 4.2.2 Web Tier 4
E Mime-Type für unbekanntes Programm Web Tier 6
M Best Practice für "Teilnahmebediengung akzeptieren" Web Tier 2
M JSP Custom Tag für Bilder Web Tier 14
H Gibt es für das message-bundle eine Standard - Ordnung? Web Tier 2
J Welcher WebServer(-anbieter) für Servlets? Web Tier 5
N Webfrontend für vorhandenes Programm Web Tier 2
A Einfaches Filter-Servlet für Benutzer-Validierung Web Tier 3
R <fmt:formatDate> und 2 Zeichen für den Wochentag? Web Tier 2
T Ajax / Javascript Plugin für Eclipse Web Tier 1
T Was nehmen für eine Datenbankapplikation mit Webinterface Web Tier 5
G wert für hiddenfield per javascript setzten Web Tier 4
K Escape Charakter für EL Web Tier 4
leifg Parameter für Tags aus String lesen (JSP 1.2) Web Tier 2
N JSF: Servlet für Bilder: Verbindung zu Spring Service ? Web Tier 1
S Mehrere Styleklassen für Tabellenreihen Web Tier 4
Joew0815 Formate von Tapestry Web Tier 3
F Wicket vs Tapestry Web Tier 10
G JSF vs. Tapestry vs. Wicket Web Tier 6
D tapestry 5 session Web Tier 2
G Tapestry Component Web Tier 2
D Tapestry :: JavaScript - Libs import Web Tier 2

Ähnliche Java Themen

Neue Themen


Oben