SpringOne 2GX 2012 Replays: Addressing Messaging Challenges Using Open Technologies, Introduction to Spring Integration and Spring Batch
Addressing Messaging Challenges Using Open Technologies
For Modern Applications Many businesses are faced with some new messaging challenges for modern applications, such as horizontal scalability of the messaging tier, heterogeneous messaging systems and access methods, and extreme transaction processing. This presentation/demo will cover how businesses can overcome these messaging challenges with the use of Spring and RabbitMQ technologies.
Tom will build a case for AMQP, explain how SpringSource is providing AMQP support via Spring AMQP and Spring Integration, explain how RabbitMQ is a modern messaging solution that offers a reliable, highly available, scalable and portable messaging system with predictable and consistent throughput and latency, and demonstrate how Spring Integration and RabbitMQ can be progressively introduced into a standard Spring web application.
About the speaker
Tom McCuch
Tom McCuch is a Solution Engineer for Hortonworks with over twenty two years of experience in software engineering. Tom specializes in the architecture, implementation, and deployment of distributed systems requiring high Reliability, Availability, and Scalability (RAS) features. Prior to Hortonworks, Tom worked for SpringSource - handling field architecture for their global accounts including Financial Services, Transportation, and Energy. Tom has consulted enterprise clients across multiple industries in the architecture of mission-critical solutions based on open source software as well as led the engineering of enterprise Java middleware supporting next-generation telecommunications products deployed at tier-1 telcos both in the U.S. and Europe.
More About Tom »Oleg Zhurakousky
Oleg is a Principal Architect with Hortonworks responsible for architecting scalable BigData solutions using various OpenSource technologies available within and outside the Hadoop ecosystem. Before Hortonworls Oleg was part of the SpringSource/VMWare where he was a core engineer working on Spring Integration framework, leading Spring Integration Scala DSL and contributing to other projects in Spring portfolio. He has 17+ years of experience in software engineering across multiple disciplines including software architecture and design, consulting, business analysis and application development. Oleg has been focusing on professional Java development since 1999. Since 2004 he has been heavily involved in using several open source technologies and platforms across a number of projects around the world and spanning industries such as Teleco, Banking, Law Enforcement, US DOD and others. As a speaker Oleg presented seminars at dozens of conferences worldwide (i.e.SpringOne, JavaOne, Java Zone, Jazoon, Java2Days, Scala Days, Uberconf, and others).
More About Oleg »
Introduction to Spring Integration and Spring Batch
In this session you will learn what Spring Integration and Spring Batch are all about, how they differ, their commonalities, and how you can use Spring Batch and Spring Integration together.
We will provide a short overview of the Enterprise Integration Patterns (EIP) as described in the highly influential book of the same name. Based on these patterns, we will then see how Spring Integration enables the development of Message-driven applications. This allows you to not only modularize new or existing applications but also makes it easy to integrate with external systems.
This session will also introduce Spring Batch. Spring Batch addresses the needs of any batch process, be it complex calculations in large financial institutions or simple data migration tasks as they exist in many software development projects. We will cover what Spring Batch is, how Spring approaches the concepts of batch and how Spring handles scaling batch processes to be able to handle any volume of data.
You will also see how Spring Integration and Spring Batch maximize the reuse of the integration support provided by the core Spring Framework. In addition to providing a robust, proven foundation, this also flattens the learning curve considerably to all developers already familiar with Spring.
About the speaker
Gunnar Hillert
Gunnar Hillert is a member of technical staff (MTS) at SpringSource, a division of VMware, Inc. He is a committer for Spring Integration, Spring AMQP and also contributes to the Cloud Foundry project. Gunnar heads the Atlanta Java Users Group and is an organizer for the DevNexus developer conference.
A native from Berlin, Germany, Gunnar has been calling Atlanta home for the past 11 years. He is an avid gardener specializing in anything sub-tropical such as bananas, palm trees and bamboo. As time permits, Gunnar works on his Spanish language skills and he and his wife Alysa are raising their two children tri-lingually (English, German, Spanish). Gunnar blogs at: http://blog.hillert.com/ and you can follow him on Twitter: https://twitter.com/ghillert
More About Gunnar »Gary Russell
Gary has been in software engineering, concentrating on Enterprise Integration, for over 30 years on various platforms, and in the Java space since the late '90s.
He has been developing with the Spring Framework since 2004 and joined SpringSource/VMware in 2009 in a consulting role. From 2009 until the end of 2011 he taught Core Spring and Enterprise Integration with Spring to several hundred developers, as well as providing Enterprise Integration consulting services with Spring Integration, Spring Batch and Core Spring.
He has been a committer on the Spring Integration project for nearly 3 years and became a full time member of the engineering team in January 2012.
More About Gary »SpringOne 2GX 2012 Replays: Spring Data Repositories Deep Dive, Intro to Cascading
Spring Data Repositories A Deep Dive
The repository abstraction layer is one of the core pieces of the Spring Data projects. It provides a consistent, interface-based programming model to allow implementing data access layers easily. The talk will start with a brief introduction and dive into best practices and implementation patterns later one.
We will conclude the session with an overview over what can actually be built on top of this generic repository abstraction and discuss integration hooks into Spring MVC and REST webservices.
About the speaker
Oliver Gierke
Oliver Gierke is engineer at SpringSource, a division of VMware, project lead of the Spring Data JPA module and involved into other Spring Data modules (e.g. MongoDB) as well. He has been into developing enterprise applications and open source projects for over 6 years now. His working focus is centered around software architecture, Spring and persistence technologies. He is regularly speaking at German and international conferences as well as author of technology articles.
Introduction to Cascading
Introduction to Cascading, an application framework for Java developers to deploy robust, enterprise-grade applications on Apache Hadoop. We'll start with the simplest Cascading program possible (file copy in a distributed file system) and progress in small steps to show a Java-based social recommender system based on Twitter feeds.
Introduction to Cascading, an application framework for Java developers to deploy robust, enterprise-grade applications on Apache Hadoop. We'll start with the simplest Cascading program possible (file copy in a distributed file system) and progress in small steps to show a Java-based social recommender system based on Twitter feeds.
The objective is to show how to work with “Big Data”, starting on a laptop with sample data sets, to generate JAR-based apps which can be deployed on very large clusters.
We'll show best practices for scalable apps in Cascading, how to leverage TDD features, etc.
About the speaker
Paco Nathan
Data Scientist @ http://ConcurrentInc.com. Developer Evangelist for http://Cascading.org open source project. Expert in Hadoop, R, cloud computing, machine learning, predictive analytics, NLP. BS MathSci and CS CompSci from Stanford, 25+ yrs in tech industry. For the past several years, I've been leading Data Science teams, working with large scale MapReduce applications.
SpringOne 2GX 2012 Replays: Getting started with Spring Data and Distributed Database Grids + Whoops, where did my architecture go
Getting started with Spring Data and Distributed Database Grids
Alternative data persistence approaches are all the rage these days. Transitioning our skill sets and legacy applications to these new and promising technologies though can be problematic. Spring Data is an exciting solution to persistence proliferation. It brings the flexibility and familiarity of the Spring Framework and adds the concepts of Repositories which allow developers to write their programs to using familiar methods such as save, update, delete, and dynamic finders.
In this presentation we will introduce Spring Data for GemFire and how it leverages your existing Spring Framework skills to create generic Spring style interfaces which will make it more efficient to transition to distributed data grids such as GemFire.
About the speakers
Mark Johnson
Mark Johnson is a Staff System Engineer at VMware where he focuses on helping people learn more about SpringSource technologies and they can aid enterprise applications.
Mark has worked on a wide range of technology during his career. Most recently he has focused on Groovy, Grails, and Scala as technologies which enable high quality applications quickly.
Mark is active in the software community as the President of the New England Java Users Group (NEJUG) and a regular presenter to user groups and various conferenes. When not working, Mark can be found riding his mountain bike on local trails and playing with his family
More About Mark »David Turanski
David Turanski is a Senior Software Engineer with SpringSource, a division of VMWare. David is a member of the Spring Data team and lead of the Spring Data GemFire project. He is also a committer on the Spring Integration project. David has extensive experience as a developer, architect and consultant serving a variety of industries. In addition he has trained hundreds of developers how to use the Spring Framework effectively.
More About David »Whoops! Where did my architecture go?
When applications grow bigger, modularity becomes a key aspect regarding maintainability. Design decisions made in the early days are hardly discoverable in the codebase, inter-module dependencies grow a lot. The talk introduces means and approaches to connect logical architecture to the codebase. Beyond that we discuss patterns and best practices around general code organization, package structures to build a solid foundation for Java applications and in how far Spring can help creating loosely coupled components and dedicated points to extend applications.
About the speaker
Oliver Gierke
Oliver Gierke is engineer at SpringSource, a division of VMware, project lead of the Spring Data JPA module and involved into other Spring Data modules (e.g. MongoDB) as well. He has been into developing enterprise applications and open source projects for over 6 years now. His working focus is centered around software architecture, Spring and persistence technologies. He is regularly speaking at German and international conferences as well as author of technology articles.
More About Oliver »SpringOne 2GX 2012 Replays: Monitoring and Managing Spring Integration, Building Big Data Pipelines with Spring Hadoop
In this presentation we will discuss the options for managing and monitoring applications that use Spring Integration. It will provide a comprehensive overview of the extensive support for JMX provided by Spring Integration, both in terms of providing access to Spring Integration internals, as well as creating a JMX client to interact with local and remote MBeanServers.
In addition, we will show how to use the Spring Integration plugin for Spring Insight to drill down into Spring Integration flow processing to examine application performance.
Topics include:
- Using the Integration MBean Exporter, and the MBeans it registers, for analyzing Messaging Endpoints and Channels.
- Exporting the Integration MBean Exporter itself as an MBean, to gain access to it's attributes and operations.
- Using the Control Bus to start and stop endpoints.
- Using the Spring Integration plugin for Spring Insight to get a real-time view of your application and its performance.
- Enabling and using Message History
- Using the orderly shutdown mechanism available in Spring Integration 2.2.
- Using JMX endpoints (with local and remote MBeanServers) to monitor attributes. invoke operations, publish notifications, and receive notifications.
About the speaker
Gary Russell
Gary has been in software engineering, concentrating on Enterprise Integration, for over 30 years on various platforms, and in the Java space since the late '90s.
He has been developing with the Spring Framework since 2004 and joined SpringSource/VMware in 2009 in a consulting role. From 2009 until the end of 2011 he taught Core Spring and Enterprise Integration with Spring to several hundred developers, as well as providing Enterprise Integration consulting services with Spring Integration, Spring Batch and Core Spring.
He has been a committer on the Spring Integration project for nearly 3 years and became a full time member of the engineering team in January 2012.
More About Gary »How to build Big Data Pipelines for Hadoop using OSS
Hadoop is not an island. To deliver a complete Big Data solution, a data pipeline needs to be developed that incorporates and orchestrates many diverse technologies. A Hadoop focused data pipeline not only needs to coordinate the running of multiple Hadoop jobs (MapReduce, Hive, Pig or Cascading), but also encompass real-time data acquisition and the analysis of reduced data sets extracted into relational/NoSQL databases or dedicated analytical engines.
This session looks at the architecture of Big Data pipelines, the challenges ahead and how to build manageable and robust solutions using Open Source software such as Apache Hadoop, Hive, Pig, Spring Hadoop, Batch and Integration.
About the speaker
Costin Leau
Costin Leau is an engineer within the SpringSource. His interests include data access and aspect oriented programming. With significant development experience, Costin has worked on various Spring Framework features (cache abstraction, JPA, java config), led the Spring Dynamic Modules (Spring OSGi probject), Spring GemFire and the Spring-inspired, OSGi 4.2 Blueprint Service RI. Currently Costin is working in the NOSQL and Big Data area, leading the Spring integration with Hadoop and Redis.
More About Costin »SpringOne 2GX 2012 Replays: Ten Great Reasons to Virtualize Java Applications, What's New in CloudFoundry
Ten Great Reasons to Virtualize Your Java Apps
Customer interest in virtualizing Java workloads has been growing exponentially year on year. For the last few years, the focus has been largely around looking for best practice guidance to mitigate concerns around virtualizing Java workloads, particularly in the area of performance. Since joining VMware, SpringSource has been investing in providing first class support for the Java runtime on vSphere with products such as EM4J. Combined with the industry-leading capabilities of the vSphere platform and the growing product portfolio around the Java ecosystem, there are many great reasons to virtualize Java.
So rather than continuing to ask the question, is it OK to virtualize Java, this session boldly aims to suggest that you would be crazy not to!
About Benjamin Corrie
Ben Corrie has been working on Java since 1998, where he began at IBM testing JDK 1.1.4. He progressed to working on the internals of IBM's Java Virtual Machine where he lead a project to develop industry-leading memory management technology for the JVM. He joined SpringSource as a consultant in 2008 and moved to California a year later to lead an effort to improve Java performance on vSphere. As the tech lead on the recently announced EM4J project, he is successfully helping to make vSphere the best place to run Java.
More About Benjamin »What's New in Cloud Foundry
Come to this session to get an in-depth view of the latest and greatest in Cloud Foundry. It's easier than ever before to build and deploy your distributed polyglot applications. You will see some exciting new options, including new Java and Node runtimes and support for background workers and container-less web apps. These features allow you to create distributed apps comprised of many smaller, focused apps each written in the framework that fits its purpose best. We will also explore the latest in tooling, including new features in the STS plugin and the brand new "next gen" VMC client. We will peek under the hood to see what's new in the Cloud Foundry architecture. From Cloud Foundry beginner to expert, this session has something for everyone.
About Jennifer Hickey
Jennifer Hickey is a Sr. Software Engineer with SpringSource/VMware, with over a decade of experience in software engineering. Jennifer is a member of the Cloud Foundry team, specializing in developer experience and support of frameworks such as Spring, Grails, Rails, and Sinatra. She is passionate about increasing developer productivity in the cloud. Jennifer has led or contributed to a number of SpringSource projects, including Hyperic and tc Server. She has been involved in converting multiple large EJB/legacy codebases to Spring. Prior to joining SpringSource, Jennifer was a principal architect of a large-scale network management system.
More About Jennifer »About Ramnivas Laddad
Ramnivas Laddad is a SpringSource Principal Engineer. He has over a decade of experience in applying his enterprise Java and aspect-oriented programming (AOP) expertise to middleware, design automation, networking, web application, user interface, and security projects.
Ramnivas Laddad is a well-known expert in enterprise Java, especially in the area of AOP and Spring. He is the author of AspectJ in Action, the best-selling book on AOP and AspectJ that has been lauded by industry experts for its presentation of practical and innovative AOP applications to solve real-world problems. Ramnivas, a Spring framework committer, is also an active presenter at leading industry events such as JavaOne, JavaPolis, No Fluff Just Stuff, SpringOne, Software Development, and has been an active member of both the AspectJ and Spring communities from their beginnings.
More About Ramnivas »SpringOne 2GX 2012 Replays: Client Side UI Smackdown, Making Connections with Spring Social
Making Connections with Spring Social
The modern web is rich with APIs that can be consumed by other applications, enabling an integrated experience for the users who hold accounts on the websites that front those APIs. Many of these APIs are secured with OAuth, an authorization specification for securing REST APIs. Spring Social is an extension to the Spring Framework that enables Spring applications to establish connections with those APIs on behalf of their users with little or no need to muck about in the intricacies of OAuth.
In this session, we'll explore how Spring Social brings API connectivity to Spring applications. We'll also uncover the newest features of Spring Social that make it easier than ever to link your application's users to the identities they maintain on various sites across the web.
About Craig Walls
Craig Walls has been professionally developing software for almost 18 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.
More About Craig »Client-Side UI Smackdown
In the modern web, user interfaces are expected to be rich, highly responsive, and available anytime, anywhere, and on any device. Round-trip server-side HTML rendering doesn't fit the bill any longer and numerous JavaScript frameworks have stepped forward to simplify development of client-side user-interfaces. With so many great options available, we now face a paradox of choice and it can be difficult to decide which UI framework best suits our needs.
In this session we'll explore a handful of the most popular client-side UI frameworks, including Backbone, Knockout, Sammy, and Spine (and others) weighing their strengths and weaknesses and helping decide which framework is most suitable for a given set of UI goals.
About Craig Walls
Craig Walls has been professionally developing software for almost 18 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.
More About Craig »SpringOne 2GX 2012 Replays: Automated Provisioning of Spring Apps to EC2 & VMware vCloud, Addressing the Big Data Challenge with a Graph
Automated Provisioning of Spring Apps to EC2 & VMware vCloud
This session will focus on deploying and managing your Spring Application in the cloud using VMware vFabric Application Director. A series of Spring applications, increasing in complexity, will be deployed. The deployments will cover generating property files and activating Spring profiles. Some other highlights of the presentation will be deploying to VMWare vCloud & EC2, updating an existing deployment, and some general tips & tricks.
The session will begin by using a simple contact application to be deployed as a standalone webapp with an in memory DB on single node, then it will continue with a more advanced example using PostgreSQL DB on a separate node, and finally demonstrate the use and configuration of an external DB & an Apache proxy. The session will conclude with the deployment and discussion of Nanotrader, a sample trading application, with complex requirements.
About Brian Dussault
Brian Dussault is a Staff Engineer with the vFabric division of VMware and has 14+ years of experience in software engineering. Throughout his tenure, he has worked in both IT (High Tech Manufacturing, Financial Industries) and R&D positions. His experience spans multiple disciplines including web applications, integration, SOA, open source, and system design.
More About Brian »About David Winterfeldt
David Winterfeldt works at VMware on the VMware vFabric Application Director project. It enables developers and organizations to deploy applications to the cloud by having a logical abstraction for software services and application topologies. This allows an application to be easily deployed multiple times to different environments.
David has been doing software development for over 20 years. He's been using Java since 1998 and involved in using Open Source almost as long. David has focused on Web and Enterprise development for most of his career, and started working with the Spring Framework in 2006.
David runs the website Spring by Example, which is a site for sharing Spring examples. The site is a general resource for Spring and should ultimately save developers time. He's is also an Apache committer on Struts and Commons Validator, as well as the creator of Commons Validator (although currently no longer active on either).
More About David »
Addressing the Big Data Challenge with a Graph
Graphs are everywhere. From websites adding social capabilities to Telcos providing personalized customer services, to innovative bioinformatics research, organizations are adopting graph databases as the best way to model and query connected data. If you can whiteboard, you can model your domain in a graph database.
In this session Emil Eifrem provides a close look at the graph model and offers best use cases for effective, cost-efficient data storage and accessibility.
Take Aways: Understand the model of a graph database and how it compares to document and relational databases Understand why graph databases are best suited for the storage, mapping and querying of connected data
Emil's presentation will be followed by a Hands-on Guide to Spring Data Neo4j. Spring Data Neo4j provides straightforward object persistence into the Neo4j graph database. Conceived by Rod Johnson and Neo Technology CEO Emil Eifrem, it is the founding project of the Spring Data effort. The library leverages a tight integration with the Spring Framework and the Spring Data infrastructure. Besides the easy to use object graph mapping it offers the powerful graph manipulation and query capabilities of Neo4j with a convenient API.
The talk introduces the different aspects of Spring Data Neo4j and shows applications in several example domains.
During the session we walk through the creation of a engaging sample application that starts with the setup and annotating the domain objects. We see the usage of Neo4jTemplate and the powerful repository abstraction. After deploying the application to a cloud PaaS we execute some interesting query use-cases on the collected data.
About Emil Eifrem
Emil Eifrem is CEO of Neo Technology and co-founder of the Neo4j project. Before founding Neo, he was the CTO of Windh AB, where he headed the development of highly complex information architectures for Enterprise Content Management Systems. Committed to sustainable open source, he guides Neo along a balanced path between free availability and commercial reliability. Emil is a frequent conference speaker and author on NOSQL databases.
More About Emil »This Year in Spring - 25 December, 2012
Welcome back to another, very special holiday, and end-of-year installment of This Week in Spring! If you've been a follower of this roundup, then you know that 2012's been a very exciting year for Spring! Let's look at some of the highlights, first, before we get to our weekly roundup:
- Springing Forward Of course, this year saw the release of Spring 3.2, released a year exactly from the release of Spring 3.1, packed with new features and helping Spring retain its position as the premiere platform for building web applications. This year also saw many major improvements and iterations in the other Spring projects like Spring Integration 2.2.0 GA, Spring Data
- The Cloud Spring works very well on all cloud platforms, owing to the natural decoupling from the underlying platform that dependency injection provides, but it has always - and continues - to enjoy a special place in the sun on Cloud Foundry, the open source PaaS. And, what a year it's been for Cloud Foundry! We've seen ecosystem partners like App Fog take the Cloud Foundry bits and run with them. We've seen the support for Spring applications on Cloud Foundry improve considerably with new features like standalone processes, and much more.
- The RESTful Web If you ask me, the most exciting part of this year was watching Spring's web support improve. If you're looking to build a web application (including in a Servlet 3 environment) or expose RESTful API endpoints, Spring MVC is the natural choice. If you want secure those RESTful endpoints, Spring Security OAuth is an easy to use binding that supports OAuth on top of REST. Need to connect to social service providers like Twitter, Facebook, LinkedIn and GitHub via OAuth? Use Spring Social. Want to support the principles of HATEOAS in your RESTful endpoints? Check out Spring HATEOAS. Do you want to transparently and easily expose Spring Data repositories for use as RESTful endpoints? You need look no further than Spring Data REST. There are no richer, more comprehensive or more integrated set of solutions for building rich, RESTful web applications than those that Spring provides today.
- Git'ing Involved This year, in particular, saw community interaction in the Spring open source projects skyrocket, now that all of the projects are all fully on GitHub.com/SpringSource. Spring and the other projects have always been open source, but the collaboration model that Git enables has made it very easy for projects like Spring Social, Spring Integration, and Spring Data to thrive on community input and contributions.
- Extending the reach of SpringSource's content We've been working hard to bring great content on all things SpringSource to all the developers, and have expanded a lot this year. For instance, besides publishing content here on SpringSource.org, did you know that you can find SpringSource on @SpringSource on Twitter, +SpringFramework on Google+, on the YouTube SpringSourceDev channel and (this is particularly useful for the many fans in China) on SpringFramework on SINA Weibo? Additionally, if you like this roundup, be sure to bookmark the This Week in Spring aggregate page.
Now then, on to this week's roundup! There's a lot to cover, and hopefully you wont want for things to read this week if you're taking time off for the holidays and have some spare time on your hands!
<Ol>
<LI> If you've been following this roundup, then you know that we wrapped up our SpringOnes India and China events. For more details, <a href="http://www.springsource.org/node/3777">checkout our wrapup post</a>!</LI>
<LI> The <EM>baeldung</EM> blog has another great post up on using Spring MVC and Spring Security to <a href="http://www.baeldung.com/2012/12/20/authentication-against-a-restful-service/">secure a RESTful web service</a>. There are many ways to secure an HTTP REST web service, including HTTP Basic and the bespoke solution presented in this article. Many people are…
SpringOne 2GX 2012 Web Track: Designing REST-ful API using Spring 3, IOC in Javascript
Designing a REST-ful API using Spring 3
In the course of creating VAS, we did a lot of work to design a useful REST API.
REST is generally a very loose collection of principals that can be interpreted in many ways, so this talk would describe a more concrete idea of what a REST-ful API should look like.
In addition, the implementation of this API was done with many of the new features in Spring 3 and are a good demonstration of the power it provides.
About Ben Hale
Ben Hale is a senior software engineer with Springsource and a core developer on the SpringSource dm Server project. Ben specializes in middleware development with using technologies such as OSGi and Aspect Oriented Programming as well as directing the build and release processes for all products in the Spring and SpringSource portfolios.
His interests include middle-tier architecture and effective build and release management strategies.
Prior to joining SpringSource, Ben spent several years leading teams in architecture and development of large-scale enterprise management applications for the telecommunications industry.
IOC + Javascript
Thicker web clients and server-side JavaScript create complexity that must be managed through architectural patterns. JavaScript hasn't yet embraced lessons learned from other platforms, like Java+Spring. Existing JavaScript MVC frameworks are too rigid and lack sufficient architectural plumbing. Javascript needs flexible architectural infrastructure for building bigger, better apps.
In this talk, Brian and John will introduce several concepts, including JavaScript Modules and Inversion of Control, and demonstrate how they alleviate many of the dominant problems encountered when building large JavaScript apps. Attendees will gain a firmer understanding of new architectural patterns and witness tangible examples of how these patterns improve testability, refactorability, composability, division of work, and team scalability.
About Brian Cavalier
Brian is a server-side Java guy turned front-end engineer, and open source fanatic. From collaborative aircraft maintenance systems for the US Navy, to Computer Assisted Surgery systems for Orthopedic surgery, to a global-scale content curation and personalization system, he loves building things that users love to use. He works at VMware on making the web more awesome, and is co-lead of the cujo.js architecture unframework (cujojs.com), a lover of Siberian huskies, family, and things with two wheels.
More about Brian: https://github.com/briancavalier http://blog.briancavalier.com/ http://www.slideshare.net/briancavalier http://lanyrd.com/profile/briancavalier/
More About Brian »About John Hann
John has been pushing the limits of the web since 1996 and has been totally engulfed in Javascript, HTML, and CSS since 2004. Of the 70+ enterprise-scale apps he's led, notable achievements include Ajax-ish and JSON-RPC-like browser apps way back in 1999 (US Patent 7,016,751), composable Javascript constructors for creating draggable modal dialogs in 2004, and a Javascript non-preemptive multi-tasking framework in 2007. When he's not working on his “top secret” project at VMWare or his latest side-project with his kids, John is sure to be coding tenaciously on the next generation of Javascript libraries at http://cujojs.github.com.
More about John: http://unscriptable.com/
More About John »SpringOne 2GX 2012 Web Track: What's New in Spring MVC 3.2 + Extending Spring MVC with Spring Mobile and JavaScript
What's New in Spring MVC 3.2
Following on Juergen's talk on the upcoming Spring 3.2 release, this presentation will focus on what's new specifically in the area of Spring MVC. The presentation will explain all noteworthy features and, as is usual with every new release, there will be a lot to discuss including Servlet-based async request support, content negotiation enhancements, REST error handling, @MVC test support, and much more. The talk does not provide an overview of Spring MVC but rather assumes a level of experience and focuses on covering what's new.
About Rossen Stoyanchev
Rossen is a Spring Framework developer focusing on Spring MVC as well as Spring Web Flow. His 17+ year background includes work on trading and risk management software, investment accounting, e-commerce web applications, directory services, among others. Prior to becoming a full-time Spring Framework developer, Rossen spent several years teaching and consulting clients building enterprise Java applications with Spring on a broad range of topics.
More About Rossen »Extending Spring MVC with Spring Mobile and JavaScript
The modern web no longer is limited to desktop browsers. Smart phones and tablets have become an integral part of our daily lives. Web sites that may look good on a 22" monitor usually do not format and display well on a much smaller screen. Additionally, network speeds can limit the performance of a web site on mobile devices. Because of these reasons many developers and organizations are considering how to make their web sites accessible to all the various devices and screen sizes for which people are using. In this session, we will explore the functionality provided within the Spring Mobile project, and how you can use it to extend your Spring MVC application onto mobile and tablet devices. We'll then continue the discussion by demonstrating how you can leverage some of the popular mobile JavaScript frameworks in combination with Spring Mobile to provide a first class experience for your users on mobile devices.
Session Detail
About Craig Walls
Craig Walls has been professionally developing software for almost 18 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.
More About Craig »About Roy Clarkson
Roy Clarkson studied computer science at Georgia Tech before beginning his career as a software engineer. He has worked as a professional software developer for over fifteen years, with a variety of languages and technologies. He is currently working as an engineer with SpringSource, at VMware, where he is the lead on the Spring for Android project. He also participates on the Greenhouse project, and built it’s associated mobile clients. Roy has spent the last few years focusing on mobile application development, including iPhone, Android, and mobile web. Prior to that, he focused most of his time on web based application development.
More About Roy »