New England Software Symposium

September 11 - 13, 2009 - Boston, MA


Sheraton Framingham
1657 Worcester Road
Framingham, MA   01701
Map »

Craig Walls

Author of Spring in Action

Craig Walls has been professionally developing software for over 17 years (and longer than that for the pure geekiness of it). He is a senior engineer with SpringSource as the Spring Social project lead and is the author of Spring in Action and XDoclet in Action (both published by Manning) and Modular Java (published by Pragmatic Bookshelf). He's a zealous promoter of the Spring Framework, speaking frequently at local user groups and conferences and writing about Spring and OSGi on his blog. When he's not slinging code, Craig spends as much time as he can with his wife, two daughters, 4 birds and 3 dogs.



Presentations

What's new in Spring

In this session, I'll lead a guided tour through the latest that Spring has to offer. Whether you're a Spring veteran or a Spring newbie, there will be something new for nearly everyone.

It's been 8 years since Spring 1.0 was released. In that time it has gone from a modest open-source project to being a de facto standard Java application framework. Now, as Spring enters its 8th year, it continues its attack on Java complexity, packed with many new features such as:

  • First-class REST support
  • A new expression language
  • More options for annotation-driven bean wiring
  • Bean profiles
  • Declarative caching abstraction
  • Enhanced Java-based configuration
  • A new "c:" namespace
  • Unified property management
  • And much more

In this session, I'll lead a guided tour through the latest that Spring has to offer. Whether you're a Spring veteran or a Spring newbie, there will be something new for nearly everyone.

Beyond JUnit: Powertools for Test-Driven Development

Writing tests is more than just writing JUnit test cases and hoping that they'll pass when your project is built. If you want assurance that your code is sound and provides the desired functionality, then you'll want to test it from every angle and run those tests as frequently as possible.

In this session, we'll look at a few testing tools that you may not be all that familiar with, including:

  • Infinitest : A continuous testing tool that reports test failures almost as quickly as you can break them.
  • Mockito : A relatively new tool for mocking objects in tests.
  • Concordion : A framework for writing FIT-like functional specifications, without the hassles of FIT.
  • jqUnit and JSTester : A xUnit-like framework for testing JavaScript.
  • Selenium : A framework for in-container testing of web applications.

If you're ready to elevate your testing prowess to the next level, come see how these tools can help.

WAR and Pieces: Breaking down monolithic web applications with Spring-DM and OSGi

In this session, we'll explore modular web application development using Spring-DM and OSGi. I'll dispel the myth that OSGi is hard and show you tips and tricks that make Spring-DM and OSGi development easy.

WAR files, the workhorse standard deployment unit for Java web applications, has been looking a little portly for a long time. Most WAR files contain not only servlets and JSPs, but are usually well-endowed with static content (such as CSS, JavaScript, and images), middle and backend support classes, and a WEB-INF/lib directory chock-full of third party libraries. Even simple web applications can carry around several megabytes worth of baggage.

Monolithic WAR files present some practical issues, including: - Every WAR file carries its own copy of embedded libraries, increasing the footprint of each web application. - Parallel development of application modules is hindered, as all modules ultimately are deployed as a single unit. - Application modularity itself is not enforced, allowing for tight coupling between application layers.

The solution to monolithic WAR files is rather simple: Break them into smaller, more easily managed modules. OSGi makes this possible--Spring-DM makes it easy.

Come see how to apply Spring and OSGi to be able to split web applications into pieces that can be developed, tested, deployed, and managed independent of each other.

That old Spring magic has me in its SpEL: DI Wizardy with the Spring Expression Language

Spring 3.0 introduced the Spring Expression Language (SpEL), an extremely powerful yet succinct way to wire non-trivial values into Spring beans. In this presentation, we'll explore SpEL in great detail and see how SpEL opens up a whole new realm of bean wiring possibilities.

Spring's brand of dependency injection is quite awesome. But there are times when simple bean references and static values won't cut it. Sometimes it makes more sense to wire bean properties with values that are evaluated dynamically at runtime.

That's where the Spring Expression Language (SpEL) comes in. SpEL is one of the most interesting of the many new features in Spring 3.0. With SpEL you can succinctly wire in values derived...

  • ...from system properties
  • ...mathematically
  • ...from the values of other bean properties
  • ...from the results of static methods
  • ...from almost anything you can conjure up

Previously, most of these types of wiring could only be accomplished with more XML configuration or special helper factory beans. But with SpEL, the seemingly impossible is not only possible, but is quite easy.

In this example-driven presentation, we'll explore SpEL in detail and you'll learn the tricks of SpEL that will make you a bean wiring wizard.

Books

by Craig Walls

Spring in Action Buy from Amazon
List Price: $49.99
Price: $27.49
You Save: $22.50 (45%)
  • Summary

    Totally revised for Spring 3.0, this book is a hands-on guide to the Spring Framework. It covers the latest features, tools, and practices including Spring MVC, REST, Security, Web Flow, and more. Following short code snippets and an ongoing example developed throughout the book, you'll learn how to build simple and efficient J2EE applications.

    About the Technology

    Spring Framework is required knowledge for Java developers, and Spring 3.0 introduces powerful new features like SpEL, the Spring Expression Language, new annotations for the IoC container, and much-needed support for REST. Whether you're just discovering Spring or you want to absorb the new 3.0 features, there's no better way to master Spring than this book.

    About the Book

    Spring in Action, Third Edition continues the practical, hands-on style of the previous bestselling editions. Author Craig Walls has a special knack for crisp and entertaining examples that zoom in on the features and techniques you really need. This edition highlights the most important aspects of Spring 3.0 including REST, remote services, messaging, Security, MVC, Web Flow, and more.

    What's Inside
    • Using annotations to reduce configuration
    • Working with RESTful resources
    • Spring Expression Language (SpEL)
    • Security, Web Flow, and more
    Who Should Read This Book

    Nearly 100,000 developers have used this book to learn Spring!

    Table of Contents
      PART 1 CORE SPRING
    1. Springing into action
    2. Wiring beans
    3. Minimizing XML configuration in Spring
    4. Aspect-oriented Spring
    5. PART 2 SPRING APPLICATION ESSENTIALS
    6. Hitting the database
    7. Managing transactions
    8. Building web applications with Spring MVC
    9. Working with Spring Web Flow
    10. Securing Spring
    11. PART 3 INTEGRATING SPRING
    12. Working with remote services
    13. Giving Spring some REST
    14. Messaging in Spring
    15. Managing Spring beans with JMX
    16. Odds and ends

by Craig Walls

Modular Java: Creating Flexible Applications with Osgi and Spring (Pragmatic Programmers) Buy from Amazon
List Price: $34.95
Price: $21.91
You Save: $13.04 (37%)
  • The secret weapon for attacking complexity in any project is to break it down into smaller, cohesive, and more easily digestible pieces. With Modular Java, you can easily develop applications that are more flexible, testable, maintainable, and comprehensible.

    Modular Java is a pragmatic guide to developing modular applications using OSGi, the framework for dynamic modularity in Java, and Spring Dynamic Modules, an OSGi extension to the Spring Framework. You'll start with the basics but quickly ramp up, creating loosely coupled modules that publish and consume services, and you'll see how to compose them into larger applications. Along the way, you'll apply what you learn as you build a complete web application that is made up of several OSGi modules, using Spring-DM to wire those modules together.

    Modular Java is filled with tips and tricks that will make you a more proficient OSGi and Spring-DM developer. Equipped with the know-how gained from this book, you'll be able to develop applications that are more robust and agile.


by Craig Walls and Ryan Breidenbach

Spring in Action Buy from Amazon
List Price: $49.99
Price: $31.67
You Save: $18.32 (37%)
  • Spring in Action 2E is an expanded, completely updated second edition of the best selling Spring in Action. Written by Craig Walls, one of Manning's best writers, this book covers the exciting new features of Spring 2.0, which was released in October 2006.

    Spring is a lightweight container framework that represents an exciting way to build enterprise components with simple Java objects. By employing dependency injection and AOP, Spring encourages loosely coupled code and enables plain-old Java objects with capabilities that were previously reserved for EJBs. This book is a hands-on, example-driven exploration of the Spring Framework. Combining short code snippets and an ongoing example developed throughout the book, it shows readers how to build simple and efficient J2EE applications, how to solve persistence problems, handle asynchronous messaging, create and consume remote services, build web applications, and integrate with most popular web frameworks. Readers will learn how to use Spring to write simpler, easier to maintain code so they can focus on what really matters-- critical business needs.

    Spring in Action, 2E is for Java developers who are looking for ways to build enterprise-grade applications based on simple Java objects, without resorting to more complex and invasive EJBs. Even hard-core EJB users will find this book valuable as Spring in Action, 2E will describe ways to use EJB components alongside Spring. Software architects will also find Spring in Action, 2E useful as they assess and apply lightweight techniques prescribed by Spring. and learn how Spring can be applied at the various layers of enterprise applications.