Service-Oriented Architecture (SOA)
The SOA track takes Service-Oriented Architecture and dives deeply into how it can best be implemented under a variety of different technical requirements. It includes information on SOA design strategies, use of enterprises service buses (ESBs), and emerging applications of SOA for complex problems such as event processing. These sessions enable architects and developers who are working on Web services and SOA to make better decisions on SOA strategies, techniques, and tools, and apply those decisions immediately on existing projects.
Technical sessions being finalized in the coming weeks. Here are a few of the sessions already confirmed:
- Apache ServiceMix 4 and OSGi
- Creating High Performance, Massively Scalable Messaging Solutions with Apache ActiveBlaze
- JSON in the Real World
- Navigating the SOA Mine Field: Optimized Application Architectures
- Putting Java to REST: The New Java + RESTful Web Services Specification
- Rapid Large-Scale SOA - Connected Products at Leapfrog Enterprises
- RESTful SOA with Mule
- Scaling RESTful Services with JAX-RS
- Securing Web Services with Apache CFX
- The Rules of SOA - A Road to a Successful SOA Implementation
- To Mediate is the Message - The Evolution of Indirection
Apache ServiceMix 4 and OSGi
Chris Custine, Committer, Apache ServiceMix; PMC Member, Apache Directory Server project
Apache ServiceMix 4 is a major update to the wildly popular ServiceMix ESB project. More than a simple rewrite to use OSGi as an infrastructure piece, ServiceMix 4 provides many more features and services that allow developers to use the OSGi foundation to build entirely new platforms and capabilities. This session looks at the basics of ServiceMix 4 and OSGi, and how to use each to create new services and integrate existing components.
This session appeals to anyone using ServiceMix, OSGi, and other related projects such as ActiveMQ, Camel, or CXF. We explore extensions to the ServiceMix 4 OSGi infrastructure, such as creating new command line shell functionality, new integration endpoints, and configuration and deployment methods. In addition we show you how to package and brand your own OSGi application based on the ServiceMix 4 Kernel.
In this session you learn:
- How ServiceMix 4 allows you to use OSGi to build entirely new platforms and capabilities;
- The new features of ServiceMix 4, including new command line shell functionality, integration endpoints, and configuration and deployment methods;
- How to package and brand your own OSGi application based on the ServiceMix 4 kernel.
Creating High Performance, Massively Scalable Messaging Solutions with Apache ActiveBlaze
Rob Davies, Director of Engineering, FUSE
Applications such as financial, market analysis and real-time control systems are pushing the envelope for high speed messaging, resulting in exponential growth in messaging rates and data grid deployments. Driven by the demand for ultra fast messaging, the Apache community developed ActiveBlaze, a new sub-module of the popular Apache ActiveMQ project. ActiveBlaze is a true point-to-point, reliable multicast messaging system to meet the requirements of the next generation of high-throughput collaborative services.
This session describes the ActiveBlaze architecture, explores use cases for ActiveBlaze, and shows how ActiveBlaze leverages a mix protocols for different problem domains. You see several examples of how ActiveBlaze solves large messaging problems and the different reliable protocols used, from NACK-based to asynchronous layered coding.
In this session you will:
- Understand how ActiveBlaze employs ultra fast multicast messaging using a Vegas-based rate control protocol;
- See how ActiveBlaze can be applied to group collaboration and true point-to-point messaging for different classes of application development problems;
- Learn how to use ActiveBlaze for cluster state control;
- Understand when to use ActiveBlaze in real application development problems, and when an alternative approach makes more sense.
JSON in the Real World
Scott Davis, Editor in Chief, about Groovy.com; Author, Groovy Recipes: Greasing the Wheels of Java and more
JavaScript Object Notation (JSON) is a familiar delivery platform for Web 2.0 content. JSON gives you all of the flexibility of a RESTful Web service without the complexity of trying to deal with deeply nested, convoluted XML in a language that is conspicuously lacking in native XML support.
In this session, we explore popular Web sites (like Yahoo!) that offer JSON output. We look at client-side JavaScript code that effortlessly consumes JSON in the browser. We demonstrate ways to easily generate JSON from Java Servlets using JSON.org libraries and capitalize on the native support for JSON that Grails offers out of the box.
In this session you learn:
- The benefits of JSON for creating and consuming RESTful Web Services, and how to take advantage of those benefits;
- Client-side JavaScript code that effortlessly consumes JSON in the browser;
- Generating JSON from Java Servlets using JSON.org libraries;
- How to capitalize on the native support for JSON offered by Grails.
Navigating the SOA Mine Field: Optimized Application Architectures
Heath Kesler, Open Source Software Evangelist
Enterprise architecture is a complex subject that needs direction on how to properly consume services of disparate systems. Because of that complexity, understanding the proper way to implement Service-Oriented Architecture (SOA) can be difficult.
This session gives you tips and tricks for consuming services from disparate systems based on real-life production examples and case studies. Learn how to avoid some common mistakes as a consumer of SOA and how to identify pitfalls that can cause major headaches with performance, as well as avoid problems with queuing. This session teaches you how to efficiently interact and develop with components of a heterogeneous Service-Oriented Architecture.
In this session you learn:
- When to use synchronous vs. asynchronous communications;
- How to use queuing systems like ActiveMQ;
- How to integrate with external systems;
- Real world experiences for consuming Web services of disparate systems.
Putting Java to REST: The New Java + RESTful Web Services Specification
Bill Burke, Chief Architect, JBoss, Inc.; Project Lead, JBoss RESTEasy Project
JAX-RS is a new specification which will be included within Java EE 6 that provides annotation and component APIs for writing RESTful Web Services in Java. This session is an introduction to the JAX-RS specification. Using simple, real-world examples, Bill explains how you can easily dispatch and marshal HTTP requests using POJOs and a few JAX-RS annotations. He explains how HTTP content negotiation works and how JAX-RS leverages it. He further defines how you can write your own payload marshallers to map your Java objects and exceptions to standard and proprietary MIME formats. Finally, he jumps to the other side of the fence to show how you can write clients that invoke on RESTful Web Services. See also Scaling RESTful Services with JAX-RS.
In this session you learn how to:
- Use the annotation and component APIs in JAX-RS for writing RESTful Web Services in Java;
- Dispatch and marshal HTTP requests using POJOs and JAX-RS annotations;
- Leverage HTTP content negotiation;
- Write your own payload marshallers to map Java objects and exceptions to MIME formats;
- Write your own clients that invoke on RESTful Web Services.
Rapid Large-Scale SOA - Connected Products at Leapfrog Enterprises
Jason Whaley, Build/Release and Infrastructure Engineer, Leapfrog Enterprises
This session presents a case study of the Connected Products project at Leapfrog Enterprises which depended on the implementation of a mission critical Java-based Service-Oriented Architecture (SOA) consisting of a variety of Web services supporting the launch of four new Internet-enabled commercial toys and several Web applications. Implemented using a mix of open source platforms, open source frameworks, a content management system, and the unification of efforts from several geographical diverse teams, Leapfrog's Connected Products architecture was designed and implemented successfully in under a year – a major undertaking that could take typical organizations twice the time to implement successfully. Further, it was implemented primarily through the use of open source components, including Day Communique, Mule, Apache Wicket, Atlassian Crowd, Cruise Control, and Apache Maven.
Specific topics covered in the case study:
1) Platform and Framework selection – The tools used and their relevant advantages.
2) Architectural design and overview – What the actual implementation looks like and why.
3) Development Lifecycle – Usage of continuous integration and rapid deployment to meet aggressive deadlines.
4) Scalability – Analysis of the architecture as it was first deployed and how it was reworked to prepare for heavy traffic during peak season.
5) Lessons Learned – What could have been (and can still be done) differently.
In this session you will:
- Understand the planning processes and tradeoffs inherent in a large-scale enterprise SOA architecture and development effort;
- Comprehend how open source components can work together to achieve significant efficiencies in design and implementation;
- Be able to apply lessons learned to similar SOA projects in your own organization.
RESTful SOA with Mule
Dan Diephouse, Software Architect, MuleSource; Co-Founder, Apache CFX
Achieving the goals of SOA is difficult. Loose coupling, service reuse, and service evolution sound great on paper, but are often elusive when starting actual implementations. The vendor mess of Web service standards has done nothing to help either. Many people are instead discovering the benefits of REST, the principled architecture of the Web, which can help you achieve these goals more easily.
In this session, we explore how Mule, a lightweight open source integration platform, can be used to build RESTful SOA solutions for the enterprise. Mule provides a variety of tools to help you build and consume RESTful services - from support for helping you build services with JAX-RS to support for consuming Atom Publishing Protocol services to built-in ETag support. Combined with Mule's multi-protocol, message routing, and transformation capabilities, you have a powerful way to Web enable your services.
In this session you learn:
- The benefits of REST architecture;
- The variety of tools provided by Mule to build and consume RESTful Web services;
- How to use Mule's multi-protocol, message routing and transformation capabilities to Web enable your services.
Scaling RESTful Services with JAX-RS
Bill Burke, Chief Architect, JBoss, Inc.; Project Lead, JBoss RESTEasy Project
Building on his first session, Putting Java to REST: The New Java + RESTful Web Services Specification, Bill demonstrates advanced techniques for designing and scaling your applications with JAX-RS and extensions to JAX-RS. Learn how to use redirection to implement a simple asynchronous job queue. See how to leverage the fundamentals of HTTP Caching using JAX-RS example services. Bill also shows you how idempotent methods can solve basic reliability problems like the Lost Update Problem, and demonstrates the performance benefits of asynchronous HTTP through various extensions to JAX-RS.
This session teaches you how to:
- Use JAX-RS and JAX-RS extensions to design and scale RESTful Web Services;
- Use redirection to implement a simple asynchronous job queue;
- Leverage the fundamentals of HTTP Caching using JAX-RS example services;
- Solve reliability problems through idempotent methods;
- Increase application performance with various extensions to JAX-RS and asynchronous HTTP.
Securing Web Services with Apache CXF
Dan Kulp, Software Developer, Apache CXF; FUSE Services Framework, Progress Software
The security challenges presented by the Web services approach are formidable and unavoidable. Many of the features that make Web services attractive are at odds with traditional security models and controls.
The WS-Security specification lays the groundwork for securing enterprise Web services. Apache CXF is an open source Web services framework that helps you build and develop Web services using front-end programming APIs, like JAX-WS. These services can speak a variety of protocols such as SOAP, XML/HTTP, RESTful HTTP, or CORBA and work over a variety of transports such as HTTP, JMS or JBI. Apache CXF supports the basic WS-* standards and provides a WS-Security implementation for handling security and authentication for Web services.
In this session you will:
- Understand the importance of using standards such as WS-Security, WS-SecurityPolicy, WS-SecureConversation and WS-Trust in securing Web service endpoints;
- Learn how to implement secure JAX-WS services using Apache CXF APIs;
- Understand how these Web services can also interoperate securely with a .NET environment.
The Rules of SOA - A Road to a Successful SOA Implementation
Jeff Genender, Member, JSR-316; Apache committer; Author, Professional Apache Tomcat 6 and more
You have been handed the keys and a blank slate to build a new services-based architecture. Are you up for the task? Do you have the knowledge, judgment, and combination of hard and soft skills needed to plan, design, and execute a significant SOA project?
Implementing a strong and flexible SOA can be a difficult challenge for an experienced architect, let alone someone with less experience. Many complex architecture projects end in failure, or are scaled back so that something can be achieved in a reasonable amount of time.
In this session, Jeff explores the key characteristics of successful SOA projects. He covers some of the patterns, and anti-patterns, tool sets, and strategies that he himself learned the hard way – through his own trial and error experiences as an architect. Last, he provides a strategy and blueprint for achieving a high likelihood of success in your SOA project.
In this session you will:
- Understand and be able to apply SOA patterns to different classes of problems;
- Learn the common failures of a SOA project and how to prevent them;
- Evaluate architecture problems and be able to apply a strategy that offers the best chance of achieving project success.
To Mediate is the Message - the Evolution of Indirection
Glen Daniels, Director of Java Platforms; VP, Web Services at the Apache Software Foundation
David Wheeler is quoted as saying "Any problem in computer science can be solved with another layer of indirection."
In this session, we explore the evolution of indirection in programming and networks. We discuss how indirection (and its cousin mediation) can increase agility, separate concerns, and how it has been a cornerstone of good software design for longer than you might think. After a historical jaunt from object factories and dependency injection to proxies and ESBs, we'll consider how mediation is helping people to achieve the promised benefits of SOA today - and of course how to avoid some key pitfalls and anti-patterns along the way.
In this session you learn how to:
- Increase agility and separate concerns with indirection and mediation;
- Use mediation to effectively build SOA;
- Avoid key pitfalls and anti-patterns when building out your architecture.
Save $300, get a FREE book
and more useful information:
- Register now to save $300 off the registration fee. Early Birds pay only $1395 through January 16 (vs. $1695).
- The first 50 people to register can select a free book from our extensive library. Book
titles include Spring Recipes, Beginning Groovy and Grails and more.
Click here to register. - Save on your hotel room at Caesars Palace by booking before February 25. Visit the Hotel and Travel page for details on traveling to Las Vegas, including 5% off any jetBlue flight!
Attend with Colleagues
Refer 2 friends to TheServerSide Java Symposium and receive a $100 gift card. Team discounts are available for teams of 5 or more.
Learn more.
Calling all JUGs!
Belong to a Java User Group? Get involved, promote your JUG, and come out to the Java Symposium. Contact Tracie Berardi for details, including a discount for your members.