Thursday, May 22, 2014

Introduction to Apache Tomcat 8

Apache Tomcat 8 implements new versions of the Servlet, JSP and EL specifications as well as adding support for the new WebSocket specification. Work has also been completed on internal refactoring in a number of areas that will impact a number of Tomcat specific features.

This presentation will provide an overview of the changes and new features introduced by both the updated specifications and the Tomcat specific changes. This session will enable attendees to identify the Tomcat 8 features of greatest interest to them and provide them with the information required to start planning their migration to Tomcat 8.


Getting started with Spring Data and Apache Hadoop

Big data and Hadoop is widely considered to be the next generation data platform. Hadoop is notoriously difficult to work with and just diving in and starting coding can easily lead to frustration. A better way is to leverage your existing Java and Spring skills to take advantage of these new technologies. In this presentation we will introduce Spring Data for Apache Hadoop and see how it can make working with Hadoop easier. We will also cover several ways to install a small Hadoop cluster that can be used to test your new Hadoop applications.


Introducing Spring XD

Developing Big Data applications is a relatively new art and developing a comprehensive solution can be challenging. Some of the key challenges arise from bringing together complex domains such as stream analysis, batch workflow orchestration and data import and export.

Several open source projects that address developing big data applications have emerged in the past few years but each project typically only address one of these domains.

Furthermore, being distinct independent projects they have different configuration and extensibility models. Spring XD is a new project that aims to tackle big data complexity. It builds upon proven Spring technologies and provides a scalable run time environment that is easily configured and assembled via a simple DSL.

Come discover how easy it is to create big data applications in this introduction to Spring XD.


Spring Integration Internals

A comprehensive review of message routing within a flow - including exactly how and when replyChannel and errorChannel headers are used how and when these headers apply in an error flow differences between synchronous and asynchronous processing (with task executors and pollers) Use of SpEL (for messagemethod mapping as well as certain "dynamic" config attributes) Type conversion (via SpEL, datatype channels, etc) Implicitly created channels How chains work How messages are mapped to methods when a message arrives at a component How gateway methods are mapped to messages (and a first look at some enhancements we are considering) Options for synchronous and asynchronous flows simple multi-threading aggregation aggregating messages from different sources How to debug Spring Integration applications Advanced configuration techniques

and more...

This presentation will be mainly demonstration and code walkthroughs.


Wednesday, May 21, 2014

Migrating from WLS, WAS, JBoss to Pivotal tc Server


Zero to Stream processing in 7 minutes with Spring XD

Creating a stream of live twitter data for an analytics dashboard using Spring XD, a JavaScript D3 component / Spring XD's REST API.


Virtualizing and Tuning Large Scale Java Platforms

The session will cover various GC tuning techniques, in particular focus on tuning large scale JVM deployments. Come to this session to learn about GC tuning recipe that can give you the best configuration for latency sensitive applications. While predominantly most enterprise class Java workloads can fit into a scaled-out set of JVM instances of less than 4GB JVM heap, there are workloads in the in memory database space that require fairly large JVMs.

In this session we take a deep dive into the issues and the optimal tuning configurations for tuning large JVMs in the range of 4GB to 128GB. In this session the GC tuning recipe shared is a refinement from 15 years of GC engagements and an adaptation in recent years for tuning some of the largest JVMs in the industry using plain HotSpot and CMS GC policy. You should be able to walk away with the ability to commence a decent GC tuning exercise on your own. The session does summarize the techniques and the necessary JVM options needed to accomplish this task. Naturally when tuning large scale JVM platforms, the underlying hardware tuning cannot be ignored, hence the session will take detour from the traditional GC tuning talks out there and dive into how you optimally size a platform for enhanced memory consumption. Lastly, the session will also cover Pivotal App Fabric reference architecture where a comprehensive performance study was done.


Sunday, May 18, 2014

Going Beyond Dependency Injection

Many developers who are learning the Spring Framework think of it as simply another mechanism for centralized dependency injection. While the framework does handle that responsibility quite well, the framework is so much more. In this session, we'll explore some of the building blocks and patterns used by the core framework as well as many of the other Spring projects. The result is that attendees will gain a better understanding of how to use the Spring Framework and learn how to build their own components that can leverage these same patterns. Topics we'll explore: 
- What is the benefit of centralized life-cycle management 
- Programming to interfaces 
- Leveraging the power of proxies 
- Using annotations 
- Understanding the template pattern

Dependency injection is one very important part of what the Spring Framework does. However, it is also a collection of very key patterns that we'll explore.
- Centralized life-cycle management
- Examining the BeanFactoryPostProcessor
- Examining the BeanPostProcessor
- How to write your own BeanPostProcessor
- Programming to interfaces 
- Benefits of programming to interfaces 
- loose coupling 
- Examples of how Spring leverages this mechanism 
- How to leverage in your own Spring applications 
- Leveraging the power of proxies 
- How proxies work in Spring 
- How Spring uses them 
- Writing your own proxy-based solution 
- Using annotations 
- Examples of how Spring uses annotations 
- Using your own annotations 
- Understanding the template pattern 
- Purpose of template pattern 
- How Spring uses templates 
- Creating your own template

Source :

Getting Started with Spring Security 3.2

Spring Security is a framework that focuses on providing both authentication and authorization to Java applications. Like all Spring projects, the real power of Spring 
Security is found in how easily it can be extended to meet custom requirements. In this presentation Rob will incrementally apply the new features found in Spring Security 3.2 to an existing application to demonstrate how it can meet your authentication and authorization needs.

Source: inside and out

Spring Integration 4.0 - The New Frontier

With this Spring Integration 4.0 release, the existing basic annotation support has received an overhaul and those who prefer to use java @Configuration classes can now define their applications without needing to use any XML (of course, XML is still supported as well).

In this session we will cover these major changes to the framework, explaining how and when to use them. It will be mainly demonstration and code walk through, and we will build a useful Spring Boot / Integration application from scratch.

Source :