What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001...

17
www.javapolis.com

Transcript of What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001...

Page 1: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com

Page 2: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com

What's New in Apache Struts 1.2.8 and 1.3 Dev?

A JAVAWUG Talk

Peter A. Pilgrim

J2EE DeveloperIT Contractor

Page 3: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com

Overall Presentation Goal

Apache Struts is still a viable technology with a great

community and a fine future!

Page 4: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com

Speaker’s Qualifications

• Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK

• Written articles for TheServerSide.com

• Integrated Struts 1.2 into Expresso Framework

• Founded and currently organise the London base JAVAWUG

• BSc Sci (Hons) Scientific Computing

Page 5: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com

An Observation

• “Remember Rickard Őberg initially created WebWork to fix some of the design-

deficiencies with [Apache] Struts”

Page 6: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com

Struts Community

• Leading MVC Model 2 Web Framework

• The People, The Companies, The Investment

• Healthy Downloads ≈ 15000 copies / month

• Cross pollination into other FOSS

• Books, Literature

• Tool Support, IDE Vendors

Page 7: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com

Struts 1.2.8

• Supports Commons Validator 1.1.4

• Upgrade Commons Validator 1.2 optional

• ActionError is deprecated, use ActionMessage

• RequestUtils deprecated, use TagUtils

• Upgrade Commons BeanUtils to support LazyDynaBeans

• Fixes for XSS Vulnerabilties

• ActionServlet Init Parameters move to Struts-Config.xml

Page 8: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com

Struts 1.3

• Realignment to Action-Oriented Framework

• Baseline Servlet 2.3 / JSP 1.2

• Integration of Commons Chains

• ComposableRequestProcessor

• Devolution of Struts Tiles to Standalone

• Devolution of Struts Taglibs to separate JARs

• Subprojects: Scripting, EL, Flow, JSP Taglibs, Tiles

Page 9: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com

Great Debate Struts 2.0

• We, now, have legacy Java!

• Shale? No. Only built on JSF

• Struts Jericho abandoned to /dev/null

• Struggle with Change vs Backward Compatibility

• Productivity advances – Ruby-on-Rails

• Struts Titanium is the latest idea

Page 10: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com

Struts Titanium

• Real-world example of consolidation

• Struts has great community and support

• WebWork implemented “Actions” correctly

• Architecture will be WebWork 2.2 lower levels

• Struts 1.x compatibility layer for migration

• Introduce Request Processor and CoR

• Rejuvenate Action-Oriented Framework with productivity gains and intelligent defaulting

Page 11: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com

Struts Ti Gains from WebWork

• WebWork documentation improved

• Focus on a ServletActionContext instead

• Better support for IoC instantiation of actions

• Additional extensions through WW Interceptors

• Better Type Conversion

• Better Custom Tags by using OGNL expressions

Page 12: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com

If You Only Remember One Thing…

Struts 1.3 is not Struts 0.5 and neither is Java 5 not Java 1.0.

Progress is inevitable fact of change.

Page 13: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com

Struts 2.0 Architecture

• A1 ApacheStruts 2.x

WebWork 2.2

Struts Ti

CompatibilityLayer

Page 14: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com

Q&A

Page 15: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com

References

• Apache Struts http://struts.apache.org

• Statistics http://people.apache.org/~vgritsenko/stats/projects/struts

• Upgrade to 1.2 http://wiki.apache.org/struts/StrutsUpgrade

• Upgrade to 1.3 http://wiki.apache.org/struts/StrutsUpgradeNotes12to13

• Clarity Initiative http://opensource2.atlassian.com/confluence/oss/display/WAG/Clarity

• Java Web Alignment Group http://opensource2.atlassian.com/confluence/oss/display/WAG/Home

• Struts SubProjects http://struts.apache.org/projects-overview.html

• Struts Jericho http://wiki.apache.org/struts/StrutsJericho

• Struts Ti https://www.twdata.org/projects/struts-ti

• Struts versus Ruby-on-Rails http://www-128.ibm.com/developerworks/java/library/wa-rubyonrails/index.html

Page 16: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com

References Continued

• Struts merging with WebWork to become Struts Ti http://www.theserverside.com/news/thread.tss?thread_id=37794

• WebWork http://www.opensymphony.com/webwork/

• Xwork http://www.opensymphony.com/xwork/

• Commons Chain http://jakarta.apache.org/commons/chain/

• Beehive http://beehive.apache.org/

Page 17: What's New in Apache Struts 1.2€¦ · • Peter Pilgrim develops Struts application since 2001 for top investment banks in London, UK • Written articles for TheServerSide.com

www.javapolis.com