Enviar búsqueda
Cargar
Os Lewisship
•
1 recomendación
•
467 vistas
oscon2007
Seguir
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 33
Recomendados
A Walking Tour of (almost) all of Springdom
A Walking Tour of (almost) all of Springdom
Joshua Long
a Running Tour of Cloud Foundry
a Running Tour of Cloud Foundry
Joshua Long
The Cloud Foundry bootcamp talk from SpringOne On The Road - Europe
The Cloud Foundry bootcamp talk from SpringOne On The Road - Europe
Joshua Long
Spring 3.1: a Walking Tour
Spring 3.1: a Walking Tour
Joshua Long
Learn Cloud-Native .NET: Core Configuration Fundamentals with Steeltoe
Learn Cloud-Native .NET: Core Configuration Fundamentals with Steeltoe
VMware Tanzu
C fowler azure-dojo
C fowler azure-dojo
sdeconf
Sqlsat154 maintain your dbs with help from ola hallengren
Sqlsat154 maintain your dbs with help from ola hallengren
Andy Galbraith
What's new in DWR version 3
What's new in DWR version 3
Joe Walker
Recomendados
A Walking Tour of (almost) all of Springdom
A Walking Tour of (almost) all of Springdom
Joshua Long
a Running Tour of Cloud Foundry
a Running Tour of Cloud Foundry
Joshua Long
The Cloud Foundry bootcamp talk from SpringOne On The Road - Europe
The Cloud Foundry bootcamp talk from SpringOne On The Road - Europe
Joshua Long
Spring 3.1: a Walking Tour
Spring 3.1: a Walking Tour
Joshua Long
Learn Cloud-Native .NET: Core Configuration Fundamentals with Steeltoe
Learn Cloud-Native .NET: Core Configuration Fundamentals with Steeltoe
VMware Tanzu
C fowler azure-dojo
C fowler azure-dojo
sdeconf
Sqlsat154 maintain your dbs with help from ola hallengren
Sqlsat154 maintain your dbs with help from ola hallengren
Andy Galbraith
What's new in DWR version 3
What's new in DWR version 3
Joe Walker
Pmg1
Pmg1
oscon2007
Os Edwards
Os Edwards
oscon2007
Os Ramirez
Os Ramirez
oscon2007
Os Krug
Os Krug
oscon2007
Os Alrubaie Ruby
Os Alrubaie Ruby
oscon2007
Os Lavigne
Os Lavigne
oscon2007
Os Grossupdated
Os Grossupdated
oscon2007
Solr Presentation5
Solr Presentation5
oscon2007
J Ruby Whirlwind Tour
J Ruby Whirlwind Tour
oscon2007
Brew up a Rich Web Application with Cappuccino
Brew up a Rich Web Application with Cappuccino
Howard Lewis Ship
Devoxx UK 2013 Test-Driven Development with JavaEE 7, Arquillian and Embedded...
Devoxx UK 2013 Test-Driven Development with JavaEE 7, Arquillian and Embedded...
Peter Pilgrim
Vs2010and Ne Tframework
Vs2010and Ne Tframework
KulveerSingh
Apache Wicket Web Framework
Apache Wicket Web Framework
Luther Baker
Tapestry 5: Java Power, Scripting Ease
Tapestry 5: Java Power, Scripting Ease
Howard Lewis Ship
ASFWS 2012 - Node.js Security – Old vulnerabilities in new dresses par Sven V...
ASFWS 2012 - Node.js Security – Old vulnerabilities in new dresses par Sven V...
Cyber Security Alliance
A Complete Tour of JSF 2
A Complete Tour of JSF 2
Jim Driscoll
JEE Course - The Web Tier
JEE Course - The Web Tier
odedns
Azure DevOps Multistage YAML Pipelines – Top 10 Features
Azure DevOps Multistage YAML Pipelines – Top 10 Features
Marc Müller
Azure Pipelines Multistage YAML - Top 10 Features
Azure Pipelines Multistage YAML - Top 10 Features
Marc Müller
Ajax Basics 2
Ajax Basics 2
bhuvanann
Real World MVC
Real World MVC
James Johnson
02 servlet-basics
02 servlet-basics
snopteck
Más contenido relacionado
Destacado
Pmg1
Pmg1
oscon2007
Os Edwards
Os Edwards
oscon2007
Os Ramirez
Os Ramirez
oscon2007
Os Krug
Os Krug
oscon2007
Os Alrubaie Ruby
Os Alrubaie Ruby
oscon2007
Os Lavigne
Os Lavigne
oscon2007
Os Grossupdated
Os Grossupdated
oscon2007
Solr Presentation5
Solr Presentation5
oscon2007
J Ruby Whirlwind Tour
J Ruby Whirlwind Tour
oscon2007
Destacado
(9)
Pmg1
Pmg1
Os Edwards
Os Edwards
Os Ramirez
Os Ramirez
Os Krug
Os Krug
Os Alrubaie Ruby
Os Alrubaie Ruby
Os Lavigne
Os Lavigne
Os Grossupdated
Os Grossupdated
Solr Presentation5
Solr Presentation5
J Ruby Whirlwind Tour
J Ruby Whirlwind Tour
Similar a Os Lewisship
Brew up a Rich Web Application with Cappuccino
Brew up a Rich Web Application with Cappuccino
Howard Lewis Ship
Devoxx UK 2013 Test-Driven Development with JavaEE 7, Arquillian and Embedded...
Devoxx UK 2013 Test-Driven Development with JavaEE 7, Arquillian and Embedded...
Peter Pilgrim
Vs2010and Ne Tframework
Vs2010and Ne Tframework
KulveerSingh
Apache Wicket Web Framework
Apache Wicket Web Framework
Luther Baker
Tapestry 5: Java Power, Scripting Ease
Tapestry 5: Java Power, Scripting Ease
Howard Lewis Ship
ASFWS 2012 - Node.js Security – Old vulnerabilities in new dresses par Sven V...
ASFWS 2012 - Node.js Security – Old vulnerabilities in new dresses par Sven V...
Cyber Security Alliance
A Complete Tour of JSF 2
A Complete Tour of JSF 2
Jim Driscoll
JEE Course - The Web Tier
JEE Course - The Web Tier
odedns
Azure DevOps Multistage YAML Pipelines – Top 10 Features
Azure DevOps Multistage YAML Pipelines – Top 10 Features
Marc Müller
Azure Pipelines Multistage YAML - Top 10 Features
Azure Pipelines Multistage YAML - Top 10 Features
Marc Müller
Ajax Basics 2
Ajax Basics 2
bhuvanann
Real World MVC
Real World MVC
James Johnson
02 servlet-basics
02 servlet-basics
snopteck
Getting started with node.js
Getting started with node.js
Mudassar Ali Sahil
Codemash-Tapestry.pdf
Codemash-Tapestry.pdf
Howard Lewis Ship
Model-Driven Software Development - Strategies for Design & Implementation of...
Model-Driven Software Development - Strategies for Design & Implementation of...
Eelco Visser
Strategies for Design & Implementation of Domain-Specific Languages
Strategies for Design & Implementation of Domain-Specific Languages
Eelco Visser
Please Don't Touch the Slow Parts V3
Please Don't Touch the Slow Parts V3
Federico Galassi
WSS And Share Point For Developers
WSS And Share Point For Developers
Manny Siddiqui MCS, MBA, PMP
Node.js vs Play Framework
Node.js vs Play Framework
Yevgeniy Brikman
Similar a Os Lewisship
(20)
Brew up a Rich Web Application with Cappuccino
Brew up a Rich Web Application with Cappuccino
Devoxx UK 2013 Test-Driven Development with JavaEE 7, Arquillian and Embedded...
Devoxx UK 2013 Test-Driven Development with JavaEE 7, Arquillian and Embedded...
Vs2010and Ne Tframework
Vs2010and Ne Tframework
Apache Wicket Web Framework
Apache Wicket Web Framework
Tapestry 5: Java Power, Scripting Ease
Tapestry 5: Java Power, Scripting Ease
ASFWS 2012 - Node.js Security – Old vulnerabilities in new dresses par Sven V...
ASFWS 2012 - Node.js Security – Old vulnerabilities in new dresses par Sven V...
A Complete Tour of JSF 2
A Complete Tour of JSF 2
JEE Course - The Web Tier
JEE Course - The Web Tier
Azure DevOps Multistage YAML Pipelines – Top 10 Features
Azure DevOps Multistage YAML Pipelines – Top 10 Features
Azure Pipelines Multistage YAML - Top 10 Features
Azure Pipelines Multistage YAML - Top 10 Features
Ajax Basics 2
Ajax Basics 2
Real World MVC
Real World MVC
02 servlet-basics
02 servlet-basics
Getting started with node.js
Getting started with node.js
Codemash-Tapestry.pdf
Codemash-Tapestry.pdf
Model-Driven Software Development - Strategies for Design & Implementation of...
Model-Driven Software Development - Strategies for Design & Implementation of...
Strategies for Design & Implementation of Domain-Specific Languages
Strategies for Design & Implementation of Domain-Specific Languages
Please Don't Touch the Slow Parts V3
Please Don't Touch the Slow Parts V3
WSS And Share Point For Developers
WSS And Share Point For Developers
Node.js vs Play Framework
Node.js vs Play Framework
Más de oscon2007
Os Borger
Os Borger
oscon2007
Os Harkins
Os Harkins
oscon2007
Os Fitzpatrick Sussman Wiifm
Os Fitzpatrick Sussman Wiifm
oscon2007
Os Bunce
Os Bunce
oscon2007
Yuicss R7
Yuicss R7
oscon2007
Performance Whack A Mole
Performance Whack A Mole
oscon2007
Os Fogel
Os Fogel
oscon2007
Os Lanphier Brashears
Os Lanphier Brashears
oscon2007
Os Tucker
Os Tucker
oscon2007
Os Fitzpatrick Sussman Swp
Os Fitzpatrick Sussman Swp
oscon2007
Os Furlong
Os Furlong
oscon2007
Os Berlin Dispelling Myths
Os Berlin Dispelling Myths
oscon2007
Os Kimsal
Os Kimsal
oscon2007
Os Pruett
Os Pruett
oscon2007
Os Alrubaie
Os Alrubaie
oscon2007
Os Keysholistic
Os Keysholistic
oscon2007
Os Jonphillips
Os Jonphillips
oscon2007
Os Urnerupdated
Os Urnerupdated
oscon2007
Adventures In Copyright Reform
Adventures In Copyright Reform
oscon2007
Railsconf2007
Railsconf2007
oscon2007
Más de oscon2007
(20)
Os Borger
Os Borger
Os Harkins
Os Harkins
Os Fitzpatrick Sussman Wiifm
Os Fitzpatrick Sussman Wiifm
Os Bunce
Os Bunce
Yuicss R7
Yuicss R7
Performance Whack A Mole
Performance Whack A Mole
Os Fogel
Os Fogel
Os Lanphier Brashears
Os Lanphier Brashears
Os Tucker
Os Tucker
Os Fitzpatrick Sussman Swp
Os Fitzpatrick Sussman Swp
Os Furlong
Os Furlong
Os Berlin Dispelling Myths
Os Berlin Dispelling Myths
Os Kimsal
Os Kimsal
Os Pruett
Os Pruett
Os Alrubaie
Os Alrubaie
Os Keysholistic
Os Keysholistic
Os Jonphillips
Os Jonphillips
Os Urnerupdated
Os Urnerupdated
Adventures In Copyright Reform
Adventures In Copyright Reform
Railsconf2007
Railsconf2007
Último
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
IES VE
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
fnnc6jmgwh
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
Yoss Cohen
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
Kaya Weers
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Alkin Tezuysal
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
LoriGlavin3
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
Wes McKinney
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
Bernd Ruecker
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
LoriGlavin3
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
Kari Kakkonen
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
Karmanjay Verma
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
LoriGlavin3
A Framework for Development in the AI Age
A Framework for Development in the AI Age
Cprime
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Pim van der Noll
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
Manik S Magar
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
panagenda
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
itnewsafrica
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
itnewsafrica
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
Knoldus Inc.
2024 April Patch Tuesday
2024 April Patch Tuesday
Ivanti
Último
(20)
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
A Framework for Development in the AI Age
A Framework for Development in the AI Age
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
2024 April Patch Tuesday
2024 April Patch Tuesday
Os Lewisship
1.
Tapestry 5 Preview Howard
M. Lewis Ship TWD Consulting, Inc. © 2007 Howard M. Lewis Ship
2.
A few observations •
❝If ... • ... I have to type one more angle bracket I'll chop off my pinkie! ❞ • ... I have to run Ant/Maven one more time I'll staple myself to death! ❞ • ... I have to restart Tomcat on more @&*$**@! time I'm going to become a sheep farmer! ❞ • ... I have to write any more &%@&^@ boilerplate code I'll start to listen to those voices in my head! ❞ • You have a budget for mental investment © 2007 Howard M. Lewis Ship
3.
Tapestry 5 Goals
and Values • Less code is better than more code • Naming conventions are better than explicit configuration • Java annotations are better than XML • Easy is better than hard • Fast is better than slow • Things should Just WorkTM © 2007 Howard M. Lewis Ship
4.
Things Should Be
Easy • How much work to create a form to edit a simple object? SessionEval surveyId : long sessionId : String subjectMatter : Rating presentation : Rating materials : Rating comments : String © 2007 Howard M. Lewis Ship
5.
Demo #1 Basic BeanEditForm
Component
6.
What did we
just see? • Tapestry application starts with a page named quot;Startquot; • Start page template in WEB-INF/Start.html Tapestry Namespace Start.html <html xmlns:t=quot;http://tapestry.apache.org/schema/tapestry_5_0_0.xsdquot;> <head> <title>Survey</title> </head> <body> <p> ... </p> <t:beaneditform object=quot;evalquot;/> </body> </html> Parameter object bound Component type: to property eval BeanEditForm © 2007 Howard M. Lewis Ship
7.
What did we
just see? Start.java public class Start { private SessionEval _eval; public SessionEval getEval() { return _eval; } Property bound to object parameter public void setEval(SessionEval eval) { _eval = eval; } } © 2007 Howard M. Lewis Ship
8.
What did we
just see? Start BeanEditForm ... Form TextField © 2007 Howard M. Lewis Ship
9.
Tapestry Applications
Application Page Page Component Component Component Component Component © 2007 Howard M. Lewis Ship
10.
Connected Objects Inside
the BeanEditor component Start eval TextField value SessionEval eval.sessionId sessionEvalId : long sessionId : String subjectMatter : Rating presentation : Rating materials : Rating comments : String © 2007 Howard M. Lewis Ship
11.
Component ‘n Stuff
Parameters Sub- Injected Components Services Component Localized Template Messages Resources © 2007 Howard M. Lewis Ship
12.
What Else? • Validation
would be nice • Via @Validation annotation on bean property methods • Customize the Form • Use a TextArea component for the comments field • Use a drop-down list for the session id © 2007 Howard M. Lewis Ship
13.
Demo #2 Adding validation
and customizing the form
14.
Components & Events
Start.java String onSuccess() Start { ... } success BeanEditForm success Form action © 2007 Howard M. Lewis Ship
15.
Tapestry and IoC •
Keep Business Logic out of the Page • Inject Services from the IoC Container Start.java private SessionEval _eval; @Inject private SessionEvalDatabase _database; Event Handler String onSuccess() { _database.add(_eval); return quot;Thanksquot;; } © 2007 Howard M. Lewis Ship
16.
Demo #3 Processing the
form submission
17.
More Components • PageLink:
Link to another page • Grid: Data table with paging & sorting • ActionLink: Trigger an action event © 2007 Howard M. Lewis Ship
18.
Grid Component • Page
navigation & sorting • Lots of configurability • Starts very simple EvalList.html <t:grid source=quot;evalsquot;/> EvalList.java public class EvalList { @Inject private SessionEvalDatabase _database; public List<SessionEval> getEvals() { return _database.getSessionEvals(); } } © 2007 Howard M. Lewis Ship
19.
Demo #4 Linking to
the EvalList page, adding the Grid
20.
Customizing Grid Output •
Customize number of rows per page with rowsperpage parameter • Move pages around: pagerposition parameter • Generates CSS class for each cell • Class name from property name Start.html <style> TH.comments-header { background-color: black; } TD.comments-cell { color: silver; } </style> © 2007 Howard M. Lewis Ship
21.
Customizing Grid Output •
Special parameters to change cell renderer: Start.html <t:grid source=quot;evalsquot; row=quot;evalquot; rowsPerPage=quot;10quot; pagerPosition=quot;topquot;> <t:parameter name=quot;commentscellquot;> <t:summarize value=quot;eval.commentsquot;/> </t:parameter> </t:grid> © 2007 Howard M. Lewis Ship
22.
Summarize Component
Summarize.java public class Summarize { @Parameter(required = true) private String _value; @Parameter private int _maxLength = 25; boolean beginRender(MarkupWriter writer) { if (_value != null) { String value = _value; if (value.length() > _maxLength) value = value.substring(0, _maxLength) + quot; ...quot;; writer.write(value); } return false; } } © 2007 Howard M. Lewis Ship
23.
Demo #5 Customizing Grid
output
24.
Is it ready
yet? © 2007 Howard M. Lewis Ship
25.
Still alpha! • Stable •
Basic Spring / Hibernate integration • Many features yet to be implemented • Code stability has been great 5.0.1 ➠ 5.0.5 • Rethink on Templates • Rethink on Inversion of Control container • Several people building production applications already! © 2007 Howard M. Lewis Ship
26.
What's Coming • Ajax
Support • Improved Hibernate integration • Request in Session Pattern • Spring Web Flow Integration © 2007 Howard M. Lewis Ship
27.
IDE Support
❝I don’t have time for Drag and Drop❞ © 2007 Howard M. Lewis Ship
28.
Ajax: Coming Soon!
<html> Page <body> Layout <form> Form <input> TextField © 2007 Howard M. Lewis Ship
29.
Tapestry 4 ➠
Tapestry 5 • Clean Slate • Not backwards compatible • T4: Hard ➠ T5: Easy • T4: Easy ➠ T5: Automatic © 2007 Howard M. Lewis Ship
30.
Overcoming “Steep Learning
Curve” Multiple Downloads XML Configuration Base Classes Tapestry 4 Abstract Classes Maven & Archetypes T5 Live Class Reloading Conventions, Annotations & Defaults POJOs © 2007 Howard M. Lewis Ship
31.
More Information • Home
Page: http://tapestry.apache.org/tapestry5/ • Dev & User Mailing Lists: dev-subscribe@tapestry.apache.org users-subscribe@tapestry.apache.org • Howard’s Blog: http://tapestryjava.blogspot.com/ • Howard’s Site: http://howardlewisship.com/ © 2007 Howard M. Lewis Ship
32.
How you can
help ... • Give it a whirl! • Blog! • Contribute patches! • JUG talks! © 2007 Howard M. Lewis Ship
33.
Q&A
© 2007 Howard M. Lewis Ship