SpringOne 2GX 2011

Chicago, October 25-28, 2011

Register Now!
Magnificent Mile Marriott
Downtown Chicago
540 North Michigan Ave.
Chicago, Illinois   60611
1 (800) 228-9290
[ Map it ]

Session Schedule

About the Session Schedule

We are committed to hype-free technical training for software architects, programmers, developers, and technical managers. We offer over one-hundred (100) sessions in the span of three days on the Spring Ecosystem and all things Groovy/Grails/Griffon. Featuring leading industry experts, who share their practical and real-world experiences; we offer extensive speaker interaction time during sessions and breaks.

2008-12-01 00:00:00.0


5:00 - 6:30 PM Registration
6:30 - 7:30 PM Dinner
7:30 - 7:45 PM Welcome
7:45 - 9:00 PM Keynote: Rod Johnson
9:00 - 11:00 PM SpringOne Americas 2008 Opening Night Party

2008-12-02 00:00:00.0


  Regency 1 Regency 2 Regency 3 Diplomat 1 Diplomat 2 Diplomat 3
8:00 - 9:00 AM Breakfast & Late Registration
9:00 - 10:30 AM
10:30 - 11:00 AM Break
11:00 - 12:30 PM
12:30 - 1:30 PM Lunch
1:30 - 3:00 PM
3:00 - 3:30 PM Break
3:30 - 5:00 PM
5:00 - 5:30 PM Break
5:30 - 7:00 PM Dinner
7:00 - 8:00 PM Keynote: John Rymer - Life in a Time of Consolidation: The Platform Market in 2009-10

2008-12-03 00:00:00.0


  Regency 1 Regency 2 Regency 3 Diplomat 1 Diplomat 2 Diplomat 3
8:00 - 9:00 AM Breakfast
9:00 - 10:30 AM
10:30 - 10:45 AM Break
10:45 - 12:15 PM
12:15 - 1:15 PM Lunch
1:15 - 2:45 PM
2:45 - 3:00 PM Break
3:00 - 5:30 PM SpringOne Americas 2008 Beach Party
5:30 - 6:30 PM Birds of a Feather Sessions
6:30 - 7:30 PM Dinner
7:30 - 8:30 PM Keynote: Adrian Colyer
8:30 - 10:00 PM Sponsor Reception

2008-12-04 00:00:00.0


  Regency 1 Regency 2 Regency 3 Diplomat 1 Diplomat 2 Diplomat 3
7:30 - 8:30 AM Breakfast
8:30 - 10:00 AM
10:00 - 10:15 AM Break
10:15 - 11:45 AM
11:45 - 12:45 PM Lunch
12:45 - 2:15 PM
tbd
2:15 - 2:30 PM Break
2:30 - 4:00 PM
tbd
tbd
4:00 - 4:30 PM End of Show

Enterprise JPA 2.0 & Spring 3.0 - Tips and Tricks for JEE5 Persistence

close
Pratik Patel

By Pratik Patel

As with many technologies, the basics are easy. The hard part comes when the developer needs to do sophisticated integration, development, and testing as part of an enterprise application. A large enterprise application requires the developer to think of issues that affect the development, scalability and robustness of the application. This presentation will cover the advanced topics described below.

A large enterprise application often will have several sub-projects that each contain their own JPA persistence unit. This opens up a number of questions around how to organize the persistence units and how the code between sub-projects should interoperate. Developers will gain insight into these issues and will see a couple of solutions using live code examples.

Many enterprise applications require integration with an application server's JTA mechanism. JTA integration allows for JPA components to work with container managed transactions and distributed transactions. A typical usage scenario for JPA & JTA is this: read from a database using JPA, perform some business logic, put a message on a queue, write to the database (again using JPA). A JTA transaction allows you to ensure that the entire set of operations is committed or a rollback is performed. In this presentation, the developer will understand the limitations and configuration of using JTA and JPA together ? primarily through real code examples.

Once unit tests are written, developers



Spring and JMS: Message Driven POJOs

close
Mark Richards

By Mark Richards

The Java Message Service (JMS) provides an standard messaging API that allows you to send and receive messages using a variety of messaging providers (including Java EE application servers). The Spring Framework takes this abstraction one step further by providing an robust JMS messaging framework that greatly simplifies message processing. In this session we will see how to use the JMS Messaging Framework provided in Spring 2.5. I will start by describing Spring's overall messaging architecture and how to configure the various beans needed for messaging. Then, through interactive coding I will discuss and demonstrate Spring's JMS Template. which is used for sending messages and receiving messages synchronously. I will then discuss and demonstrate Message Driven POJOs, which are Spring's answer for asynchronous message listeners. After attending this session you will have all the necessary knowledge and code examples to use JMS in your Spring applications.

Agenda:

Introduction

Spring Messaging Framework Architecture

JMSTemplate Configuration

Using the JMS Template to Send and Receive Messages

Message Driven POJOs

Issues and Limitations



Spring Cleaning: Tips for Reducing XML in Spring Configuration

close
Craig Walls

By Craig Walls

A common complaint about Spring is the vast amount of XML required to configure an application. In this presentation, I'll show you ways to reduce much of the XML required to configure Spring.

A typical Spring configuration file will contain dozens, hundreds, or possibly thousands of lines of XML. Because of all of the XML clutter, some have started looking for alternatives to Spring that don't require so much configuration, even if it means forfeiting all of the other benefits afforded by Spring.

But before you throw the baby out with the bathwater, you should know that there are several ways to simplify Spring configuration so that it isn't so XML-heavy.

In this presentation, I'll show you ways to cut back on Spring configuration while still achieving the same results.



Spring for the Angle-Bracket Averse: Developing Spring Applications with Absolutely No XML

close
Craig Walls

By Craig Walls

In this session, we'll explore ways of configuring Spring without involving XML. We'll start with an examination of JRuby and Groovy configuration mechanisms and then dig into Spring JavaConfig and see how to wire an entire Spring application together using annotations instead of XML.

One of the most prevalent myths about Spring is that Spring requires heavy use of XML. While it is true that XML is the conventional option for configuring a Spring application context, it is not the only option. Non-XML alternatives exist, including scripting configuration with JRuby or Groovy and annotation-based configuration with Spring JavaConfig.

What's especially interesting about these non-XML alternatives is that aside from freeing developers from the "tyranny" of angle-brackets, they also open up opportunities for dynamically configured Spring contexts that take advantage of language constructs not available in XML, such as looping and conditional execution. Moreover, concerns abo



Introducing Spring Security 2.5

close
Ben Alex

By Ben Alex

Does your application need security? If so, you'll find this intensely demonstration-oriented session provides an easy introduction to the popular Spring Security project, and how to apply it to web applications. You'll discover the three easy steps to adding Spring Security to an existing application, how to configure some of your main authentication services, and how to use both web and method authorization capabilities. You'll also receive plenty of pragmatic security tips, plus see demonstrations of the exciting new Spring Security 2.5 expression language (EL) features.

Spring Security is a popular, open-source Java security framework that represents the Spring portfolio's official security capability. It has received hundreds of thousands of downloads, been ported to other platforms (such as Python and Microsoft .NET) and represents a popular choice in many banking, government, and military installations.

This session presents practical solutions for addressing today's complex enterprise application security requirements using Spring Security. It takes attendees on a step-by-step journey that begins with the simple security requirement of a login form, and grows to include more advanced requirements such as web request authorization, single sign on and fe



Eating Your Own Dog Food: Spring Inside the Enterprise Bundle Repository

close
Scott Andrews

By Scott Andrews

The SpringSource Enterprise Bundle Repository is a OSGi-compliant Maven artifact repository with a rich front-end user interface. This mission-critical application is also built on the latest version of Spring, and serves as a good example for Spring best practice (and lessons learned for non-best practices). Come to this session to see how this innovative application works and how it applies the latest Spring technologies.

This session will walk through the design and implementation of the SpringSource Enterprise Bundle Repository. Through example, it shows how to apply the following technologies:

- Spring Beans with annotation-configuration

- Spring MVC with a REST-oriented architecture

- Progressive Ajax/HTML views with Spring JavaScript and Dojo

- Atom views for web service clients

- Use of Equinox and the SpringSource dm Server Infrastructure



Introducing Spring Java Configuration

close
Chris Beams

By Chris Beams

Spring Java Configuration, or JavaConfig for short, provides a pure-Java and type-safe mechanism for configuring the Spring IoC container. This approach provides the benefits of centralized dependency injection with the power and ease of working in Java and without the angle brackets of XML.

In this session you'll learn:

The benefits of JavaConfig

How JavaConfig compares to and integrates with Spring's other configuration approaches (XML and Annotation-Driven Injection)

How to use JavaConfig to wire up your own applications

Live demos will include:

Porting Spring's PetClinic web application from Spring XML to Spring JavaConfig



Inject this: Spring into Fusion Middleware

close
Michael Chen

By Michael Chen, Patrick Peralta, and Randy Stafford

Oracle Fusion Middleware features a unique Hot-Pluggable architecture that integrates and extends the Spring Framework, making it easy to use in your custom applications. This session will highlight how products like Oracle Coherence, Oracle WebLogic Server, and Oracle Toplink, as well as open source persistence technology like EclipseLink can solve a wide range of problems for the enterprise developer.

No mere certification of Spring libraries, the Spring Framework support for Oracle WebLogic Server continues to produces enterprise-grade Spring integration to WebLogic Clusters, Security, Web Services, the server management console, JMX, JMS, and of course, distributed JTA transactions. By using a Data Grid such as Coherence, Spring applications can enjoy reliable, fast, and linearly scalable data access when dealing with your application state data. Also, using TopLink and Spring's DAO layer together can offer a high-performance, productive approach to persisting POJOs to relational databases.



Adrian Colyer

By Adrian Colyer



Developing Rich Web Applications with Spring

close
Keith Donald

By Keith Donald

Spring offers several interesting modules for building and running rich web applications: Spring MVC, Spring Web Flow, Spring JavaScript, and Spring Faces. This session will provide an overview of these modules and show how they relate to one another. Attendees will see how Spring simplifies the development and deployment of rich web applications on containers like Tomcat, as well as on Spring's new application server. Attendees will also gain insight into the Spring 3.0 roadmap, including exciting new REST, JSON, and Flex support.

Spring Web MVC is a popular web framework, and the foundational platform for powering Spring-based web applications. Version 2.5 introduces major new features that simplify the core MVC programming model, including support for annotated @Controllers and convention-over-configuration. This session shows how to apply these new features to gain development productivity and implementation consistency.

Building on the Spring MVC platform are a number of interesting modules. Spring Web Flow 2 adds significant power for implementing flows within a Spring MVC-based app. Spring Faces, a new module, provides support for JavaServerFaces in a familiar Spring MVC environment. And last but not last



Working with Spring Web Flow 2

close
Keith Donald

By Keith Donald

Web Flow is a Spring Web MVC extension that allows you to define Controllers using a higher-order domain-specific-language. This language is designed to model user interactions that require several requests into the server to complete, or may be invoked from different contexts. This session dives deep into the features of the Web Flow 2 definition language, and illustrates how to use it to create sophisticated controller modules.

In this session you will learn:

- How to implement reusable controller modules as self-contained bundles that can be refreshed without container restart

- How to solve the back button problem and duplicate submit problem

- How to handle Ajax events and render partial responses

- How to simply data access concerns and prevent lazy loading exceptions by using flow-managed persistence

- How to secure flows, including their startup

- How to test your controller logic

- General best-practices for designing and implementing flows

- Techniques for achieving flow reuse, including use of flow definition inheritance

- Guidelines for deploying flows alongside Spring Web MVC multi-action @Controllers

-



Hands-on Workshop: Developing Rich Web Applications with Spring

close
Keith Donald

By Keith Donald

In this session, attendees will interact with the speaker to create a web application powered by Spring MVC 3.0. Bring your laptop to this session to get hands on experience with Spring.

Hands on workshop.



Enterprise Development Tools for Spring Applications

close
Christian Dupuis

By Christian Dupuis and Mik Kersten

Spring IDE is the proven standard toolset for doing Spring development within the Eclipse Platform. It supports Spring's core programming model and the board range of open-source Portfolio Products. With the SpringSource Tool Suite additional value-added features have been introduced that combine Spring IDE and Eclipse Mylyn to significantly streamline the development process and help making SpringSource best-practice knowledge and recommendations available to developers at their fingertips while working in their IDE. This session will introduce the different tool products from SpringSource and will outline their benefits.

Session Detail



Case Study: Migrating to Spring at MTV Networks

close
Justin Edelson

By Justin Edelson

This case study analyzes the enterprise architecture migration to Spring at MTV Networks Digital. The presentation covers details about how Spring was chosen to replace ATG Dynamo and provides an architectural comparison. The session also identifies practical lessons learned during the migration and how other architects of large enterprise systems can leverage them for their own projects.

Session Detail



Skyway Generation Framework for Spring

close
Mike  Evans

By Mike Evans, Jack Kennedy, and Jared Rodriguez

Learn how to accelerate the delivery of Spring applications using the Skyway Generation Framework for Spring. This session will focus on how developers are using Skyway’s Domain-Specific Language (DSL) and Spring-certified code generation capabilities to design, develop and maintain Spring applications. The session will also demonstrate how the modularity of the Skyway Generation Framework for Spring enables users to generate Spring code and artifacts as an end-to-end solution or for individual Spring Framework modules (Spring MVC, ORM, DAO, Service, Core).

In this session, Skyway Software Founders Jared Rodriguez and Jack Kennedy will present a hands-on overview of Skyway’s Domain-Specific Language (DSL) and Spring-certified code generation capabilities. Building on Spring’s comprehensive framework that abstracts the complexities of enterprise software development, Skyway’s Generation Framework for Spring takes the creation of Spring applications one step further with rich tooling and automated configurations.

Session attendees will learn:

* How Skyway Builder complements Spring tooling

* How Skyway Builder generates Spring-certified code that looks like it was hand-coded

* How the modularity of the Skyway Generation Framework fo



Introduction to Spring Integration

close
Mark Fisher

By Mark Fisher

Spring Integration was officially announced at The Spring Experience last year, and since then we have released 1.0. Attend this session to learn what Spring Integration is all about and how you can get started using it right away.

The session begins with an overview of the Enterprise Integration Patterns as catalogued in the highly influential book of the same name. The patterns provide a context for describing the various roles and integration concerns in an application based on messaging. We will then explore the Spring Integration API to see how it enables the development of Message-driven applications based on those patterns. Along the way, you will see how Spring Integration builds upon familiar Spring idioms such as interceptors, templates, and the strategy pattern. You will also see that Spring Integration maximizes reuse of the integration support in the Spring Framework core for everything from remoting and J



Spring Integration Deep Dive

close
Mark Fisher

By Mark Fisher

Intended for those who have already attended the "Introduction to Spring Integration", this session offers an intensive, demo-driven exploration of Spring Integration's advanced configuration options and extension points.

In this session, you will learn how to schedule concurrent pollers, how to enable transactions across Message Endpoints, and how to apply security for Message Channels. Next, you will learn how to configure advanced routing strategies including the Scatter/Gather pattern with customized Splitters and Aggregators. Finally, we will explore the many extension points within the API in much greater depth than in the introductory session. After this session, you will understand how to provide your own inbound and outbound adapters, message transformers, and domain-specific routers. Most importantly, you will understand how to do all of this while maintaining the separation of concerns that is esse

Prerequisite: Introduction to Spring Integration



Enterprise Apache Tomcat

close
Adam Fitzgerald

By Adam Fitzgerald

Apache Tomcat is the most popular Java application server in production today. This session will discuss the usage patterns of Apache Tomcat and the most common issues that arise when it is used in enterprise environments. The goal of the presentation is to introduce and demonstrate useful production tools to help to ensure quality performance of Tomcat in mission critical systems.

Topics to be covered include:

-Configuration and control of large distributed Tomcat installations

-Application provisioning and deployment

-Failure analysis and diagnostics



Enhancing Spring MVC Web Applications Progressively with Spring JavaScript

close
Jeremy Grelle

By Jeremy Grelle

Spring JavaScript is a JavaScript abstraction framework that allows you to progressively enhance a web page with behavior. The framework consists of a public JavaScript API along with an implementation that builds on the Dojo Toolkit. Spring.js simplifies the use of Dojo for common enterprise scenarios while retaining its full-power for advanced use cases. Come to this session to learn to use Spring.js and Dojo to create compelling user interfaces for your Spring MVC web applications.

This session will walk through using Spring.js to add a number of rich web capabilities to your applications, including:

- Decorating standard HTML links and forms with Ajax events

- Linking in partial updates to a page

- Adding effects such as progress indicators, blinds, and popups

- Performing client-side validation

In addition, you'll see how Spring.js can help with:

- Gracefully degrading when JavaScript is not available

- Meeting requirements for accessibility

- Applying progressive enhancement techniques



Simplifying JavaServerFaces Development with Spring Faces

close
Jeremy Grelle

By Jeremy Grelle

Traditional JSF development has gained a reputation for being overly complex and cumbersome. Spring Faces introduces a host of features that improve the development experience and performance a JSF application. In this session, attendees will see a real-time demonstration of how Spring Faces makes the JSF experience more productive and reduces the pain of container re-starts and verbose configuration.

This live coding session will highlight the features of Spring Faces that make using JSF and Spring together a more cohesive experience:

- High-level DSL for structuring control logic that utilizes EL and Groovy and is both easy to unit test and fully dynamic and refreshable in-container at runtime.

- Introduction of view and flow scopes that fit more naturally with JSF's stateful model

- Reduction in external configuration with no need for JSF managed- bean or navigation-rule definitions

- Easy-to-introduce client-side validation and Ajax

- Flow-managed persistence contexts that enable true transparent persistence.

- Simplified integration with Spring Security

- Less conceptual disconnect b



Integrating Flex and Spring

close
Jeremy Grelle

By Jeremy Grelle

Flex offers several ways to communicate remotely from the client to a back-end system, but it is ultimately agnostic to the technology being used on the server. Connecting a Flex front end to a Spring-based service layer has long been possible, but it hasn't always been easy or obvious how to do so without a heavy investment in proprietary technology. Come to this session to see how to take advantage of the recently open-sourced BlazeDS project from Adobe to make connecting Flex to Spring easier and more natural.

This session will walk through several approaches to communication between Flex and Spring, including:

Exporting Spring beans for direct remoting

Creating and consuming RESTful Spring resources

Creating and consuming SOAP based Spring web services.

Each approach will be examined in detail, with a comparison of the pros and cons of each technique so that attendees may make an informed decision when choosing the approach to use in their own rich applications.



Heterogeneous Cluster Communication

close
Filip Hanik

By Filip Hanik

Many group communications modules are built for a uniform communication model. In many cluster implementations this is often not the best solution to achieve the performance and scalability that is needed in heterogeneous clusters. This presentation will introduce a Tomcat module, nicknamed Apache Tribes, that has addressed the need to support messaging with different attributes per message and is used in the next version of Tomcat Clustering.

This session will cover

Challenges in group communication in heterogeneous clusters

Today's uniform and non-uniform solutions

Comparison to existing frameworks that exist today

Why the need for Tribes

Tribes architecture and design - detailed overview of the Tribes architecture, and the reason behind it.

Tribes configuration and usage

Tipis - Introducing the Apache Tribes building blocks. A detailed overview of how a developer can build on top of Tribes to fit the exact needs for their environments

Code examples and example implementations

Usage in the real world



Zero Latency Http - Using Comet with Apache Tomcat

close
Filip Hanik

By Filip Hanik

As browsers and web servers have become de facto standards, the need for instantaneous data exchange has grown. AJAX was one of the responses for a web client to efficiently communicate asynchronously in the background with a remote web server. Tomcat 6.0 has gone beyond AJAX and implemented a new feature called Comet, allowing for both asynchronous uni- and bi-directional communication between client and server while still leveraging the HTTP protocol and Java Servlets. The Comet technique has also been nicknamed "Zero Latency HTTP" as it circumvents the overhead by the traditional request/response methodology that the protocol implies.

The session will cover

HTTP then and now, a brief history of the evolution of the HTTP protocol

AJAX, what it is, how it works and what it has allowed us to accomplish

Beyond AJAX, Comet - introduction to the Comet technique

Uni- vs bi-directional Comet, what's the difference

Technical overview of the Comet technique, challenges and their solutions

Scalability discussions around Comet

Using Comet with Tomcat



Introduction to the SpringSource dm Server

close
Rob Harrop

By Rob Harrop

The SpringSource dm Server is the next-generation modular middleware platform. In this session, Project Lead Rob Harrop and SpringSource CTO Adrian Colyer will present a rapid, hands-on introduction to the dm Server.

Topics covered will include:

What is the dm Server?

Getting started with the dm Server

Building modular applications on dm Server

Using the dm Server tools

dm Server Roadmap

At the end of this session attendees will have all the knowledge needed to get started with the dm Server and modular applications. Delegates can attend the Advanced SpringSource dm Server session to learn more about using dm Server in their organization

Attendees should have an intermediate understanding of Java SE and Java EE web applications



Advanced SpringSource dm Server

close
Rob Harrop

By Rob Harrop and Glyn Normington

Following on from the Introduction to the SpringSource dm Server session, Project Lead Rob Harrop and SpringSource Distinguished Engineer Glyn Normington will discuss advanced dm Server use cases and internals.

Topics will include:

dm Server architecture

Advanced OSGi wiring

Deployment, personalities, and profiles

Diagnosing common developer errors

Serviceability and support infrastructure

Migrating Java EE applications

Attendees should be familiar with the SpringSource dm Server and should have an intermediate understanding of Java SE and Java EE web applications.

Prerequisite: Introduction to the SpringSource dm Server



Building Large-Scale, Modular Software

close
Rob Harrop

By Rob Harrop and Glyn Normington

In this session, SpringSource dm Server Project Lead Rob Harrop and SpringSource Distinguished Engineer Glyn Normington will discuss the design and implementation of large-scale, modular software using the dm Server as a case study.

Topics covered will include:

Designing for modularity: responsibility driven design

Reliability and serviceability

Environmental issues

Systems, layering, subsystems, modules, and dependencies

Conceptual integrity and convergence

The use of formal methods and multiple models

Concurrency

Causally Connected Self Representation (CCSR) concepts

Attendees should have an intermediate understanding of Java SE, design patterns and common architectural challenges.



Advanced Concurrency: Design and Construction

close
Rob Harrop

By Rob Harrop

Following on from his popular concurrency session from last year, Rob will present a hardcore discussion of concurrency in Java and beyond.

Attendees will learn about:

  • Concurrency in Java 6 and Java 7
  • Patterns for concurrent applications
  • Design considerations and pitfalls
  • Concurrency beyond Java including Kilim, Erlang and Scala
  • Diagnosing concurrency bugs

Attendees should have a thorough understanding of Java SE.

Session Detail



Managing your Applications with SpringSource AMS

close
Jennifer Hickey

By Jennifer Hickey

Is your application feeling neglected? Once you deployed it into production, did you drift apart? Perhaps you abandoned your deployed application for some hot new project? Come to this session to learn how to use the SpringSource Application Management Suite (AMS) to reconnect with your Spring-powered application in both development and production environments. We will explore how AMS uses AOP and JMX to provide automatic discovery, monitoring and runtime control of a variety of Spring components. Attendees will learn how to use the AMS API to easily build manageability into their own application components. Attend this session and learn how to break down those communication barriers and gain new insight into your application.

Topic Detail



Managing Spring Applications in the Cloud

close
Jennifer Hickey

By Jennifer Hickey

This session shows a practical application of cloud computing using multiple new SpringSource products. It demonstrates a set of actual applications, including SpringSource dm Server and AMS, working together in multiple virtual nodes.

The buzz around virtualization makes it difficult to find the real value in all the shiny new fluff. There are some real values to be found in virtualization, even for pragmatic developers. This session will demonstrate a practical usage of cloud computing with Amazon Web Services and discuss some of the existing tools for application management and provisioning in the cloud.



The Dojo Toolkit: From Zero to Production

close
Pete Higgins

By Pete Higgins

The Dojo Toolkit provides professional tools for all your Rich Web(tm) requirements, ranging from a minimal set of utility functions for everyday Web Development to cutting edge client-side technology including a full suite of tools for every step of development. We'll cover the lightweight Base Dojo utility functions provided by the the 26k dojo.js, explore the benefits of Dojo's package and loader system, Widgeting framework, pre-made UI widgets, DojoX components in incubation like Charting, Cometd/XMPP, SMD, among others, and finish up by showing how the Dojo Build system can shave every last available byte on the wire down to a minimal collection of client-side code. From progressive to dynamic, Dojo provides all the tools needed within a single unified API to get you going -- from zero to production.

We will explore every nook-and-cranny provided by the Dojo Toolkit to ease pains of the development cycle and for projects large and small, covering some of the lesser-known gems available today for the most advanced use of JavaScript, while maintaining modularity and good development practices along the way. Learn to use Dojo from the bottom up, starting small and adding in optional components to achieve rapid results.

Attendees will gain useful insights into the power of forward thinking APIs, and learn optimization techniques essential for any rich web experience.



What's New in Spring Framework 3.0

close
Juergen Hoeller

By Juergen Hoeller

With the Spring Framework 3.0 release, we are introducing further annotation-based configuration options, unified expression language support and comprehensive REST support. This talk discusses Spring as a modern Java 5 oriented application framework: covering the core component model, annotation-driven web MVC as well as platform integration.

Session detail...



Spring and Java EE 6

close
Juergen Hoeller

By Juergen Hoeller

The Spring Framework is well-known for tight integration with the J2EE 1.4 and Java EE 5 platforms. Now Java EE 6 is coming our way... Where are new integration opportunities emerging? How does Spring differentiate itself from the new programming models in Java EE 6 - in particular from Web Beans? Where is the Spring component model compatible with the direction that Java EE 6 is taking? This talk will provide an early analysis and give an outlook on how the Spring Framework will adopt Java EE 6 APIs in the course of 2009.

Session Detail



Keynote: Spring, SpringSource and the War on Complexity

close
Rod Johnson

By Rod Johnson

Opening Keynote

Detail



Examining the OSGi Marketplace

close
Kirk Knoernschild

By Kirk Knoernschild

The OSGi Service Platform is a standard dynamic module system for Java. Already under adoption by most major platform vendors, OSGi is a disruptive technology that stands to transform the packaging, delivery, and management of Java applications and services. Extending the capabilities of the Java platform, OSGi supports the ability to deploy multiple versions of a module, discover new modules dynamically, and deploy modules without restarting the system. In this session, analyst Kirk Knoernschild will introduce the OSGi Service Platform, examine the current OSGI market, and explore OSGi's place in the next generation Java application platform.

Session Detail



Case Study: Morgan Stanley Spring Usage

close
Mark Kralj-Taylor

By Mark Kralj-Taylor

This session will explore how and why Spring is being used at a large financial institution. At Morgan Stanley we use Java a lot: What kinds of systems do we develop in Java? Why did we decide to use Spring? What problems did Spring solve for us? How did we adopt Spring across a large enterprise, for established projects as well as for new developments?

Mark will show how Spring is helping to execute on a strategy of providing the firm's Java developers with a best-of-breed blend of open-source and in-house libraries.

We will see how Spring was adopted across the enterprise. Mark will share developer feedback and lessons learnt.

Mark will show how a custom Spring?s transaction manager implementation that helps to address the firm's particular needs around robust, high-throughput transaction processing over multiple resources, without using a 2-phase-commit XA transaction manager.



Making sense of AOP choices

close
Ramnivas Laddad

By Ramnivas Laddad

One-size-fit-all fits nothing! Just one kind of AOP won't fit all applications, either. Therefore, there are many choices available when using Spring-AspectJ combination. First, there is a choice about AOP system: proxy-based AOP or bytecode-based AOP. Then there is a syntax choice: traditional AspectJ, @AspectJ, and XML syntax. Within bytecode-based weaving, there are weaving choices: build time weaver or load-time weaver (LTW). If you choose LTW, you have further choices of AspectJ agent-driven or Spring-driven LTW. Confused? Don't be. These choices, while confusing at first, exists for a reason. This session explores all these choices and provides guideline on choosing the right combination to make you successful with AOP.

Session Detail



Lessons Learned Modularizing Java Applications with OSGi

close
Costin Leau

By Costin Leau

Modularity, versioning and dynamics make OSGi an ideal candidate for deploying and running Java applications, whether small or large. However, nothing comes for free and resource and, like in any other environment, there are "do"s and "don't"s. In this session, we'll start by looking at OSGi (plus HK2 and JAM while we're at it) and then focus on some of challenges that one might encounter when developing an enterprise application in OSGi and how they can be addressed, using the lessons learned in Spring Dynamic Modules project and SpringSource Application Platform.

Session Detail



Spring Dynamic Modules Update

close
Costin Leau

By Costin Leau

Spring Dynamic Modules (or Spring-OSGi) project makes it easy to build Spring applications that run inside an OSGi environment. This allows the application to provide better separation of modules, the ability to dynamically add, remove and update modules in a running system as well as deployment of multiple versions simultaneously.

In this session you'll learn:

* The main features of Spring-DM

* How to introduce your application to OSGi through Spring-DM

* How to deal with OSGi dynamics without rewriting your app



Building Java Portlets with Spring MVC

close
John Lewis

By John Lewis

This session will provide a complete tour of using the Spring MVC framework to build Java Portlets. It will include an in-depth review of a sample portlet application developed using the latest features of Spring MVC, including Annotation-based Controllers. If you are writing Portlets and using Spring, this session is for you.

We'll begin by discussing the unique differences and challenges when developing Portlets instead of traditional Servlet webapps. Then we'll talk about the unique approach that Spring MVC takes towards Portlets that fully leverages the Portlet lifecycle, instead of masking it like many other frameworks. We'll take an extensive tour of a sample application so we can see all the unique pieces of the framework in action. Finally we'll conclude with discussion of the upcoming support for the Portlet 2.0 (JSR 286) specification that will be part of Spring 3.0.



Architecting scalable reporting and business intelligence applications using Spring and Pentaho

close
Mat Lowery

By Mat Lowery

This session will discuss technology and techniques for Spring developers to create scalable reporting and business intelligence (BI) applications using technologies from Springsource and Pentaho. It will briefly review Pentaho’s technical capabilities and then focus on application design, integration, and deployment along with some interesting real-world use cases and customer examples.

Modern architectures and flexible open source models have made it easier and easier for developers to incorporate business intelligence and reporting capabilities directly into their applications. It’s also increasingly common that integrated BI is becoming an expected and even required component in enterprise operational applications.

Use-cases vary widely and span everything from embedding reporting to provide access to data sources and distribution in popular, easy-to-consume formats to sophisticated workflows, analytics, and visualizations.

Pentaho Corporation, its partners, and its community have addressed a huge range of applications that take advantage of the Spring framework. The s



Maximizing Architecture Reuse for High Performance

close
Wayne Lund

By Wayne Lund

Learn how you can maximize your success with reusable, industrialized architectures. This session will focus on how Accenture integrates standard processes, tools, and architectures to enable full-scale industrialization for high performance. It will also highlight some of the recent steps Accenture has taken with SpringSource to enable accelerated development through standardized development environments and runtime architectures supporting web online, batch and integration application style development for client solutions.

Session Detail



VMware Virtualization Makes Java Application Development and Deployment Easier

close
Richard McDougall

By Richard McDougall

If you’re curious about the ways virtualization can be used in Java development and deployment, you’ll want to attend this session. VMware principal engineer Richard McDougall discusses the new SpringSourceTool Suite integration with the VMware Workstation Eclipse plug-in that lets you seamlessly move Java application code into a VMware virtual machine with a few mouse clicks, speeding application development, testing, and debugging. You’ll learn how VMware virtualization technology provides cost advantages and deployment flexibility for runtime deployments of lightweight, modular server architectures from Spring - on desktops, in data centers or in virtualized grid or cloud environments. Best practices for running Java workloads in VMware virtual machines will be included in the presentation as well.

Session Detail



Introduction to Spring Extensions

close
Russell Miles

By Russell Miles

Spring Extensions, in a nutshell, are open source projects that extend the core Spring portfolio projects. The goal is to create high quality, popular and well documented extension projects to Spring, each with their own identity and release cycle.

Each Spring Extension represents a discrete and useful product that SpringSource customers can be assured, once those projects hit a specific level of maturity, meet the high quality bar normally associated with the Spring Portfolio projects.

Each project is lead by members of the Spring Community along with a SpringSource sponsor whose job is to guide the project to its full potential, promoting the extension internally and to clients and making sure that the extension gets the maximum benefit from being associated with the strong SpringSource brand.

This talk will cover:

-Why you might consider proposing a Spring Extension. Including, what's in it for the project (services provided and association with the Spring brand) and what's in it for me?

-Spring Extensions are not 'code buckets'.

-Do all extensions have to be 'new'?

-What is the process for proposing a Spring Extension?

-What is that about copyright assignment?

-Who is the 'sponsor' guy?

-What is the lifecycle of a Spring Extension?

-Will all extensions to Spring come from Spring Extensions?

Finally we will showcase the Spring Extensions site, delving into the experiences of a couple of example extensions that are already in the 'live' phase.



Testing Strategies and Techniques

close
Jim Moore

By Jim Moore

Spring was created largely in response to the desire to be able to test the code we write in the enterprise. Surprisingly, this is still a novel idea to many people. We will explore some of the ways that Spring facilitates testing and associated design in your applications across the Spring Portfolio, such as Spring Batch, Spring Web Flow, and more. As a great side-benefit, we will see how (in a cursory way) the various Spring projects work.

This is a very code-driven presentation, where we will focus on Spring-specific techniques.



Java/.NET interopability with Spring and Spring for .NET

close
Mark Pollack

By Mark Pollack

Given the increasing prevalence of .NET and Java being used together within the same company, understanding how to make these two technologies communicate with each other and the role of Spring in this scenario is becoming yet another skill set to have in ones proverbial developer toolbox.

The knee-jerk reaction to interoperability is to use web services. While web services are a common choice, they do have their limitations and are other options available.

In this session will provide an overview the most popular approaches to interoperability including

Shared Resources

Bridging Solutions

Web Services

Message-oriented Middleware

REST

Grid computing

The talk will demonstrate how Spring on both Java and .NET provides a consistent programming model and important programming abstractions.

Demos showing interoperability using web services, message-oriented middleware, and REST will demonstrated using a Spring.NET powered client application and a Spring powered Java server.



Spring for .NET - New Feature Update

close
Mark Pollack

By Mark Pollack

The Spring for .NET 1.2 release introduced several important new features. This session gives provides an in depth demonstration of those features including messaging (MQMQ, ActiveMQ), WCF integration, and scheduling support using Quartz.NET. The Spring for .NET 2.0 roadmap will also be discussed.

Session Details



Java/.NET interopability with Spring and Spring.NET

close
Mark Pollack

By Mark Pollack

In this session we will show various approaches to interopability between Java and .NET using the Spring framework on both sides to provide a consistent programming model. Examples showing interopability using web services, REST, and message oriented middleware will demonstrated with a .NET client and Java based servers including the SpringSource Application Platform.

Session Detail



RESTful Web Applications with Spring 3.0

close
Arjen Poutsma

By Arjen Poutsma

One of the major new themes of Spring 3.0 is the support for REST in Spring MVC. In this session, Arjen will investigate these features from the perspective of a web application developer. Attend this session to learn about URI templates, content-negotiation, and other RESTFul concepts.

We will start by giving an overview of REST: where did it come from, how does it work, how can it be used to build a web application, and where does it make sense to use? Using illustrative examples, we will try to find an answer to these questions.

Next, we look at the new RESTful features in Spring, including:

- RESTful URI's

- URI templates

- Content negotiation

- HTTP method conversion

- ETag support



Implementing and Consuming RESTful Web Services

close
Arjen Poutsma

By Arjen Poutsma

REST, the REpresentational State Transfer, is the architectural style underlying the HTTP protocol. In the last couple of years, REST has emerged as a compelling and simpler alternative to SOAP/WSDL/WS-*-based distributed architectures. In this session, Arjen will focus on REST from the perspective of a web service developer, using Spring MVC.

We will start by giving an overview of REST: where did it come from, how does it work, and how can it be used to build a distributed architecture? Using illustrative examples, we will try to find an answer to these questions.

Next, we look at the new REST features coming in Spring 3.0. We will look at Spring-MVC and JSR-311 (also known as JAX-RS) on the server-side, but also investigate client-side options, such as the plain HttpURLConnection, the more mature Commons HttpClient, and the new Spring RestTemplate.



Case Study: Spring at LinkedIn

close
Yan Pujante

By Yan Pujante

At LinkedIn, we have been using Spring (very extensively) for several years. Our application uses over 1000 spring files for the configuration and wiring of all the components of the system. In this session I will present the problems we were trying to solve when we decided to use Spring as a solution and how we extended Spring to suit our particular needs (through the standard xml extension mechanism introduced with Spring 2.0).

LinkedIn is an online professional network of more than 27 million experienced professionals from around the world, representing 150 industries.



Effective Use of the Oracle Database with Spring

close
Thomas Risberg

By Thomas Risberg

In this talk we will look at some advanced features of the Oracle Database that most developers overlook. This includes the native XML data type, Advanced Queuing for messaging and transparent auditing of database changes.

During the presentation the features will be shown in live code and we will walk through three complete examples utilizing the discussed features.

One example will show how to use triggers and Advanced Queuing to monitor changes made to the database. Another example shows how we can persist domain objects as XML data using JAXB and Oracle's XMLType. A third example shows how we can create an audit trail in the database by propagating the web application principal information to the database and logging any changes made to database tables.

We will also discuss how the Advanced Pack for the Oracle Database can make these tasks a lot simpler, both in terms of development effort and for configuration.

Session Detail



Persistence Tuning for your Spring Applications

close
Thomas Risberg

By Thomas Risberg

This talk will discuss a variety of issues you should consider when tuning the persistence layer of your Spring applications.

We will discuss SQL tuning, JDBC tuning and to some extent database tuning. We will also look at the unique issues encountered with ORM tools like Hibernate and EclipseLink. One issue covered in detail is the performance impact of eager vs. lazy loading.

To tune ORM tools, you need to be able to capture the generated SQL. We will show some useful tools that can help with this.

Session Detail



Grails for Spring Developers

close
Graeme Rocher

By Graeme Rocher

In this talk the Grails project lead, Graeme Rocher, introduces a new way to develop web applications with the Spring framework. The Grails web application framework, based on the Groovy language with powerful Spring underpinnings, is lowering the barrier of entry to Java EE development with Spring.

Through clever use of DSLs and convention-over-configuration Grails dramatically reduces the complexity of web development while still allowing the flexibility of the underlying frameworks such as Spring MVC, Web Flow and Hibernate. This session will guide you through the basics of Grails, and preview its power features such as GORM, GSP and Web Flow.



Life in a Time of Consolidation: The Platform Market in 2009-10

close
John Rymer

By John Rymer

IBM and Oracle are now the big dogs in Java middleware, and Microsoft's enterprise onslaught is generating double-digit .NET growth in a down economy. Game over, right? Not at all. All three vendors must overcome their inherent complexity and high costs of their suites in a market that increasingly rewards platforms with strong fit-to-purpose, high configurability, low costs. Open source is growing as a factor in the market, not shrinking. This speech will outline the directions, drivers, and likely outcomes of the platform market in this time of vendor consolidation.



Leaving Legacy: Strategies (and Justifications) in moving to Spring

close
Colin Sampaleanu

By Colin Sampaleanu

Organizations and individuals considering the use of Spring may face a number of concerns which can impact their ability to execute: there may be an existing legacy codebase which needs to be migrated, a lack of familiarity with the new technology, or a need to justify the use of Spring instead of continued use of older technologies or use of other alternatives.

This session focuses on strategies and justifications when moving from legacy technologies such as full stack Java EE 1.4 or earlier (with or without EJB 2.x) to the Spring platform. This session will also be of use for those considering the use of Spring with or without full stack Java EE 5.

Topics covered in this session include:

How Spring integrates with, and builds on Java EE, while offering a number of compelling benefits

A look at Spring in comparison to EJB 2.5

The impact of migrating a legacy, full-stack Java EE 1.4 or 1.3 application ((with or without EJB)) to the Spring platform including:

    - When and why a migration makes sense

    - Factors leading to greater or lesser complexity

    - Strategies and techniques when migrating an existing legacy application to Spring, including the transition period as well as the final goal

Case study: a discussion of one customer's experience in moving a full stack, tr



Developing Spring applications for the WebSphere platform

close
Mark Schwartz

By Mark Schwartz

Aetna has released more than 70 applications built on the Spring Framework and deployed on WebSphere since early 2006. In this presentation I will present options we considered in both the Spring Framework and the WebSphere platform for configuration, packaging, initialization, and management of these applications. I will also discuss some of the techniques we have used to introduce our development community to the Spring Framework.

Session Detail



Enterprise Messaging with ActiveMQ and Spring JMS

close
Bruce Snyder

By Bruce Snyder

Systems based on messaging are increasingly being recognized for better handling of unpredictable changes as well as for scaling further than traditional tightly-coupled applications. Apache ActiveMQ is an open source message broker that supports JMS, provides client access from many different languages and offers many advanced features necessary for enterprise level messaging. The Spring JMS APIs greatly simplify JMS messaging by handling common scenarios for you. With these APIs, both synchronous and asynchronous messaging and also Message-Driven POJOs (MDPs) become very easy and are a perfect complement to ActiveMQ.

Session Detail



Lessons Learned Applying Spring MVC 2.5

close
Rossen Stoyanchev

By Rossen Stoyanchev

Version 2.5 of Spring MVC introduced a new programming model based on annotations. In the last year, best practices have emerged on how to use this programming model effectively. Attend this session to get an in-depth walk-through of the programming model, learn the best practices, and then see how to apply them on your project.

Covered in this talk:

- The @Controller programming model in-depth

- Best practices on @Controller class and handler method design

- Effective URL routing and view resolution techniques

- Form processing, the annotations way

- Tips on debugging and tracing



Getting Hands-On with JavaScript and Browser Technologies

close
Rossen Stoyanchev

By Rossen Stoyanchev

Ajax is a starting point for web application development today. But how comfortable are you with foundational browser technologies including modern HTML markup, DOM scripting with JavaScript, external design through CSS as well as related topics such as progressive enhancement, unobtrusive JavaScript, accessibility, and others?

Today's server-side developer has to break the ice and venture into client-side technologies and learn some good practices. For example it is common to separate style from the HTML and while you don't have to become a CSS expert you do need to understand what makes good HTML markup so that visual design can be successfully externalized and delegated to a designer if necessary.

Come to this session to learn what's important in web development today including both debugging techniques as well as a discussion of important design ideas for the client side. Design ideas will be presented in the context of Spring JavaScript and you will learn how it can help you to meet those design goals effectively.

Topics covered:

- Web development with Firebug, Web Developer and other Firefox add-ons.

- Progressive enhancement techniques

- Unobtrusive JavaScript

- Applying the CSS Framework (bundled with Spring JavaScript)

- Debugging JavaScript and Ajax applications

- Testing browser applications



Scaling Batch Applications in the Enterprise

close
Dave Syer

By Dave Syer

Batch and offline processing is a fact of life for many of us, and by its nature it often comes with deadlines and windows for processing. Sometimes the only way to make that deadline is to take a large job and throw more hardware at it. Unfortunately things aren't always that easy, and this presentation aims to show the design and architecture constraints that are imposed by scalability requirements, and some patterns for implementing scalable batch applications using Spring Batch. Of course not all jobs need to scale, and of those that do, some need to scale in different ways than others. The presentation also discusses those aspects of designing a batch application or batch system, so that developers and programme managers can be confident with their commitments to deadlines, and have some tools for capacity planning if things start to change.

Session Detail



Introduction to Spring Python

close
Greg Turnquist

By Greg Turnquist

Spring Python is an offshoot of the Spring Framework and Spring Security module, targeted for Python. Spring provides many useful features, and I wanted those same features available when working with Python.

Spring Python offers many of the same useful features as Spring including: inversion of control, database template, transaction template, security, aspect oriented programming, and remoting.

These are useful tools in any programming language, and are the building blocks for enterprise applications. Code developers have used the Spring framework to leverage their development resources towards working on solutions for their problem space rather than plumbing code. This Spring extension gives users access to a pure python framework that solves many of the same problems.

While some parts of Spring have been ported, such as the formidable architecture of Spring Security, other things have been coded from the ground up using the dynamic nature of python, such as AOP. Everything has been coded to be succinct while providing the user with practical, usable tools to solve their problems.

This talk covers:

- Brief history of Spring Python - where is came from and how it got started

- IoC container - XML-based and pure python code-based (similar to Spring JavaConfig)

- Database template - show sample code utilizing the template with row mappers, and how the backend database can be changed through configuration

- Transaction - examples that show some parts using @Transactional with other parts configured through programmatic transactions

- Security - show how PetClinic has been locked down with database-backed security without tinkering with PetClinic's components

- AOP - show sample code of how to use this proxy-based pythonic solution to intercept calls

- Remoting - show how



Spring Batch 2.0 Overview

close
Lucas Ward

By Lucas Ward

This presentation will discuss new features in the 2.0 release of the Spring Batch framework. These include enhancements made for Java 5, including annotations and parameterized types, along with other improvements that have been made based on community feedback.

Spring Batch is a lightweight, comprehensive batch framework designed to enable the development of robust batch applications vital for the daily operations of enterprise systems. Spring Batch builds upon the productivity, POJO-based development approach, and general ease of use capabilities people have come to know from the Spring Framework, while making it easy for developers to access and leverage more advance enterprise services when necessary. Spring Batch also provides reusable functions that are essential in processing large volumes of records, including logging/tracing, transaction management, job processing statistics, job restart, skip, and resource management. It also provides mor



Spring-loaded RIA with Appcelerator

close
Kevin Whinnery

By Kevin Whinnery

This session will demonstrate how developers can rapidly front a Spring-powered service layer with the Appcelerator Rich Internet Application framework. Learn the basics of Appcelerator's message bus, which connects a HTML, CSS, and JavaScript based web client with back end services implemented using Spring Framework in a seamless message-oriented architecture. Learn to develop a browser-based RIA with as much (or as little) JavaScript as you would like with Appcelerator's Web Expression Language. Get things done right on the back end with Spring Framework, and get a rich, event-driven UI in the browser without needing to be a JavaScript guru.

The popularity of Spring Framework for server side Java is no accident - Spring has given Java developers a sane option for developing a robust service tier without the pain of certain elements of Java EE. But when it comes to building compelling user interfaces for the web, the old programming model of Web 1.0 (HTML pages being dynamically generated on the server) makes it difficult to create the kind of seamless user experience today's web application users expect. Ajax has helped breathe new life into these applications, but what web tier developers really need is an event-driven, rich client application that fronts a service layer that is designed to perform back end tasks well. And



Case Study: GWT & Comet Integration with the Spring Framework at NYSE Euronext ATS

close
David Winterfeldt

By David Winterfeldt

This presentation will cover basic GWT (Google Web Toolkit) and Spring integration as well as more advanced integration using Comet for server side push. The advanced example will use Dojo's Comet Library with the Bayeux Protocol. GWT & Comet were investigated and chosen based on requirements to develop a new web based application to monitor trades that is as responsive as possible and can run in most browers without any plugins. GWT and Comet help address both of these requirements.

This presentation will cover basic GWT (Google Web Toolkit) and Spring integration. Advanced examples will show integration of GWT with Spring using Comet for server side push, including how to integrate Dojo's Comet Library with the Bayeux Protocol. GWT & Comet were investigated and chosen based on requirements to develop a new web based application to monitor trades that is as responsive as possible and can run in most browers without any plugins. GWT allows complex GUIs and event generation while still leveraging Java development skills and Java IDE debug environments. Comet allows the monitoring application to avoid constantly polling the application server and let's the server gener



Terracotta - Real Apps, Real Frameworks, Real Use Cases

close
Ari Zilka

By Ari Zilka

Writing enterprise Java apps can be a real drag. Apps should be simpler to build and run - doing so will save your company lots of money but, more importantly, it will help you avoid a lot of headaches.

You may already know about Terracotta, but this is not just another Terracotta / vendor presentation. We worked with customer use cases and built a real app using real frameworks. It is a fully functioning web application; it’s not just a demo but the app has security, MySQL and ORM, and even more! The source code is totally free and open source and is meant to teach Terracotta tire-kickers what it is like to live with our products as much as it is designed to give the community a springboard for creating apps that are simple to build and implement.

Come to this talk if you want to learn all the neat and cool ways we learned to offload the database. Come to this talk if you want to learn how to plug Spring Security, Webflow, MVC, and more into a Terracotta-based backbone. We will spend our entire time together on source code, the internals of Spring and how / what Terracotta is sharing underneath our app. Also, come to this talk if you want to learn what it takes to make Terracotta really scale. This web app we’ll showcase can talk to 50,000 concurrent users on 16 JVMs. We’ve gained a lot of knowledge about Spring, Terracotta, and web app development. We want to share it with you.

Do not come to this talk if you want to keep paying your vendor lots of money for your database and application server.

Session Detail



Client/Server Application Development using JSON SOA/REST

close
Kris Zyp

By Kris Zyp

JSON is rapidly becoming the standard means for data on the web, and service oriented architecture (SOA) and REST interfaces are proving to be the architecture of choice. By using existing and emerging format built on JSON for defining web services, developers can rapidly build and consume web services with high levels of modularity and reusability that can be provided by SOA and JSON in a web environment, and leverage the REST style architecture for scalable interoperable client/server interfacing. We will specifically look out we can use the Dojo JavaScript library to connect to these services.

Details:

In this session we will look at how we can use the tools of JSON web services, including Service Mapping Description (SMD) and JSON Schema, to quickly integrate JSON sources and rapidly develop applications using decoupled services for scalable high-performance standards-based client server applications.

We will see a demonstration of creating an application using Dojo by quickly plugging in dojo.data storage and dojo.rpc service components and using standard REST and JSON-RPC communication with a server.

We will see how to leverage the REST architecture for data-centric applications and utilize JSON referencing for rich data structures. REST-based storage and RPC services can ea

Prerequisite: Certainly not required, but RESTful Web Applications with Spring 3.0 by Arjen Poutsma would be certainly help provide a good understanding of the Spring side of implementing RESTful services.



Golden Rules for Managing your Architecture

close
Alexander von Zitzewitz

By Alexander von Zitzewitz

It is always beneficial for a project to define a clear software architecture. But how can you fight growing deviations between the planned architecture and the physical code base? How can you avoid expensive redesigns and refactoring phases? How can you achieve an outstanding technical quality of your code base? The session explains the basics concepts of architecture management for Java projects.

Participants will learn:

* How to define a small set of rules and guidelines to achieve an outstanding technical quality for their Java projects

* How to define a large scale architecture for their systems

* How to implement automatic checks for their architecture rules and quality guidelines