Today's applications don't live in a vacuum - you need to take the applications to where your users are. Let Spring's REST support along with its powerful client-side technology support, help you get there faster.
Spring provides tools for building multi-client web applications, including support for mobile clients and REST APIs. It includes the Spring MVC framework for building web UIs, the RestTemplate for consuming REST services, and tools like Spring Android for building native Android apps that integrate with REST backends. Demos show consuming a Spring REST service from a web UI, Android app, and HTML5 app to demonstrate support for multiple client types from a single backend.
This talk introduces the role that Spring MVC and REST can play as a service-side endpoint model that can be connected to from mobile, rich, and desktop applications.
This document summarizes Josh Long's presentation on updates to the Spring framework. It discusses:
- Spring Framework versions 3.1, 3.2, and the upcoming 4.0 release
- New features in Spring 3.1 including environment profiles, Java-based configuration, caching, and Servlet 3.0 support
- Plans for Spring 3.2 including a Gradle build, contribution model on GitHub, and asynchronous MVC processing
- Changes to plans for Spring 3.2 where support for Java EE 7 and Java SE 8 was postponed due to delays in those projects. Spring 3.2 will instead focus on core framework refinements with Java 8 and EE 7 features planned for Spring 3.
This document provides an overview of Spring MVC, the model-view-controller framework for building web applications in Spring. It discusses Spring MVC's request processing workflow including the front controller and application context. It also covers controllers, mapping requests, returning views and data representation. Key topics include RESTful design, annotations like @RequestMapping and return types, and view resolvers for resolving JSP and other view technologies.
The Web and Spring MVC continue to be one of the most active areas of the
Spring Framework with each new release adding plenty of features and refinements
requested by the community. Furthermore version 4 added a significant choice
for web applications to build WebSocket-style architectures.
This talk provides an overview of the areas in which the framework has evolved
along with highlights of specific noteworthy features from the most recent
releases.
The document discusses Java web services and RESTful web services. It provides an overview of JAX-WS for implementing SOAP-based web services and JAX-RS for implementing RESTful web services. Key points include how JAX-WS uses annotations to simplify web service development, the SOAP protocol for exchanging messages, and how JAX-RS leverages HTTP methods and URIs to access resources on the web.
This document discusses new features and improvements in Spring 4. It covers Java 8 support including lambda expressions, date/time API updates, and optional types. It also summarizes core container improvements like meta annotations, generic qualifiers, and conditional bean configuration. General web improvements involving the @RestController annotation and Jackson serialization views are outlined. Testing improvements such as active profile resolution and the SocketUtils class are also mentioned.
The document describes the Spring MVC request lifecycle and how requests are handled in Spring MVC. It discusses how the DispatcherServlet receives requests and uses handler mappings to determine which controller should handle each request. It then describes how controllers process requests, returning a ModelAndView which is used to render the view. It also provides details on configuring controllers, view resolvers, and handler mappings, as well as examples of different types of controllers like command, form, and multi-action controllers.
This document provides information on using Spring Boot Actuator to add production-ready features like health monitoring, metrics collection, and auditing to Spring Boot applications. It describes built-in endpoints like /health and /metrics that provide health checks and application metrics. It also shows how to add custom health indicators, record custom metrics, and export metrics to external systems.
This document provides an overview of web application development and servlet technology. It discusses the history and evolution of web pages to dynamic web applications. It then defines web applications and the request-response model. Common Gateway Interface (CGI) is introduced as the first technique for dynamic content, along with its limitations which led to the creation of servlets. Key servlet concepts like the servlet interface, generic servlet, HTTP servlet, and servlet lifecycle methods are covered. The document also examines the HttpServletRequest and HttpServletResponse interfaces and their various methods. Finally, it discusses session tracking approaches including cookies and the session API.
This document summarizes the basics of Spring MVC, including the model-view-controller (MVC) pattern it uses. It describes the main components - the model which contains application data, the view which displays data to the user, and the controller which handles requests and coordinates the model and view. It provides examples of how controllers work using annotations like @RequestMapping and how they can return different types of responses. It also briefly mentions other related concepts like interceptors, exceptions, and static resources.
Spring boot for buidling microservicesNilanjan Roy
ย
Spring Boot is a microframework for building microservices that focuses on getting started quickly with Spring. It exposes useful features by default and gets out of the way if defaults need to change. Spring Boot helps build microservices by automating configuration of dependencies, logging, properties, security, databases, and more. It includes modules for the main library, autoconfiguration, starters, command line interface, production-ready features, and tools.
The document discusses advanced topics in Spring MVC, including annotation driven controllers, arguments and return types, and validation. It provides details on annotations like @Controller, @RequestMapping, @PathVariable, @ModelAttribute, @CookieValue, @HeaderValue, @DateTimeFormat, @RequestBody, and @ResponseBody and how they can be used to configure controller methods. It also describes what types of arguments controller methods can accept and what return types are allowed.
This was a quick (15 minutes!) tour of Cloud Foundry that I gave at JFokus 2012 introducing Cloud Foundry as the answer to the question, "I've got a working web application and Spring made it easy, but where do I host it?"
Spring MVC is a framework for building Java web applications in Spring. It includes model-view-controller components like controllers, views, and handlers for common tasks like handling forms, exceptions, localization and themes. Spring MVC offers flexibility through its configurable pieces and leverages dependency injection from the Spring framework. Resources for learning more include the Spring website, books on Spring and Spring MVC, and online documentation.
The document discusses Spring Session, which provides a way to store and configure session data handling in a platform-independent manner. It introduces Spring Session's architecture and components, including the SessionRepositoryFilter, SessionRepository implementations, and HttpSession wrappers. It then outlines the steps to use Spring Session with Redis for session persistence, including configuration of the RedisConnectionFactory, session usage, and bootstrap of SpringSession.
Don't Wait! Develop Responsive Applications with Java EE7 InsteadWASdev Community
ย
The document discusses how to develop responsive applications with Java EE7. It focuses on using asynchronous processing and non-blocking I/O to maximize throughput and handle many requests. Key technologies discussed include JAX-RS 2.0 asynchronous processing, the Concurrency Utilities, the WebSocket API, and non-blocking I/O in Servlet 3.1. Code examples are provided for implementing asynchronous processing using these different Java EE 7 technologies.
1. Spring MVC is the web framework module of the Spring Framework, providing MVC architecture support and web request handling capabilities.
2. The DispatcherServlet is central to Spring MVC and handles incoming web requests, passing them to controllers for processing and returning a model and view.
3. Controllers handle requests and return a model and view, with the view resolver determining how to render the view. Annotations allow specifying request mappings and other configurations.
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.
This document discusses Spring Framework 4.0 and its support for Java 8 features. Spring 4.0 will include first-class support for Java 8 language features like lambda expressions and the new date/time API. It will also support upcoming Java EE 7 specifications. Some initial challenges in supporting Java 8 included differences in bytecode versions and hash algorithm changes. The document provides examples of using Java 8 lambda expressions with Spring's JdbcTemplate. It also discusses the state of Java 8 and tool support as Spring 4.0 development progresses.
This document provides information on servlets including:
- Servlets allow dynamic content and interaction for web applications and can be used to build search engines, e-commerce sites, and more.
- Servlets have better performance than CGI since they remain loaded in memory between requests rather than starting a new process for each request.
- Servlets follow a request-response lifecycle and provide APIs to handle HTTP requests and responses through the Servlet, HttpServletRequest, and HttpServletResponse interfaces.
This document provides an overview of server-side web programming and different technologies used to create dynamic web pages, including Common Gateway Interface (CGI), servlets, and JavaServer Pages (JSP). CGI allows building dynamic web sites by running programs on the server that can generate HTML responses. Servlets provide a Java-based alternative to CGI with improved performance, portability, and security. Servlets use a request-response model and are executed by a servlet container. JSP is a technology that simplifies web page programming by mixing static elements like HTML with scripting code.
ASP.NET MVC 4 Request Pipeline InternalsLukasz Lysik
ย
This is a presentation about ASP.NET MVC 4 request pipeline, presented on Study Group meeting. It mainly contains analysis of MVC framework's source code.
The document provides an introduction to Java web technology and servlets. It discusses HTTP and its request/response model. It describes common HTTP methods like GET and POST, and explains the difference between the two. It also covers the servlet lifecycle, web containers, and setting up a servlet development environment.
Spring MVC is a framework for building Java web applications in Spring. It uses the MVC architectural pattern to decouple the different parts of the application. The framework provides features like controllers to handle requests, models to manage data, and views to render the model for the user. It aims to make developing enterprise applications simple while maintaining power and flexibility.
The document provides an introduction to the Spring MVC framework. It describes key concepts such as MVC architecture, dependency injection, configuration of the DispatcherServlet, mapping requests to controllers, and defining views. It also discusses configuring other features like file uploads, scheduling, logging, security, and exceptions handling. The document encourages enrolling in a Udemy course for more details on using Spring MVC.
The document describes the Spring MVC request lifecycle and how requests are handled in Spring MVC. It discusses how the DispatcherServlet receives requests and uses handler mappings to determine which controller should handle each request. It then describes how controllers process requests, returning a ModelAndView which is used to render the view. It also provides details on configuring controllers, view resolvers, and handler mappings, as well as examples of different types of controllers like command, form, and multi-action controllers.
This document provides information on using Spring Boot Actuator to add production-ready features like health monitoring, metrics collection, and auditing to Spring Boot applications. It describes built-in endpoints like /health and /metrics that provide health checks and application metrics. It also shows how to add custom health indicators, record custom metrics, and export metrics to external systems.
This document provides an overview of web application development and servlet technology. It discusses the history and evolution of web pages to dynamic web applications. It then defines web applications and the request-response model. Common Gateway Interface (CGI) is introduced as the first technique for dynamic content, along with its limitations which led to the creation of servlets. Key servlet concepts like the servlet interface, generic servlet, HTTP servlet, and servlet lifecycle methods are covered. The document also examines the HttpServletRequest and HttpServletResponse interfaces and their various methods. Finally, it discusses session tracking approaches including cookies and the session API.
This document summarizes the basics of Spring MVC, including the model-view-controller (MVC) pattern it uses. It describes the main components - the model which contains application data, the view which displays data to the user, and the controller which handles requests and coordinates the model and view. It provides examples of how controllers work using annotations like @RequestMapping and how they can return different types of responses. It also briefly mentions other related concepts like interceptors, exceptions, and static resources.
Spring boot for buidling microservicesNilanjan Roy
ย
Spring Boot is a microframework for building microservices that focuses on getting started quickly with Spring. It exposes useful features by default and gets out of the way if defaults need to change. Spring Boot helps build microservices by automating configuration of dependencies, logging, properties, security, databases, and more. It includes modules for the main library, autoconfiguration, starters, command line interface, production-ready features, and tools.
The document discusses advanced topics in Spring MVC, including annotation driven controllers, arguments and return types, and validation. It provides details on annotations like @Controller, @RequestMapping, @PathVariable, @ModelAttribute, @CookieValue, @HeaderValue, @DateTimeFormat, @RequestBody, and @ResponseBody and how they can be used to configure controller methods. It also describes what types of arguments controller methods can accept and what return types are allowed.
This was a quick (15 minutes!) tour of Cloud Foundry that I gave at JFokus 2012 introducing Cloud Foundry as the answer to the question, "I've got a working web application and Spring made it easy, but where do I host it?"
Spring MVC is a framework for building Java web applications in Spring. It includes model-view-controller components like controllers, views, and handlers for common tasks like handling forms, exceptions, localization and themes. Spring MVC offers flexibility through its configurable pieces and leverages dependency injection from the Spring framework. Resources for learning more include the Spring website, books on Spring and Spring MVC, and online documentation.
The document discusses Spring Session, which provides a way to store and configure session data handling in a platform-independent manner. It introduces Spring Session's architecture and components, including the SessionRepositoryFilter, SessionRepository implementations, and HttpSession wrappers. It then outlines the steps to use Spring Session with Redis for session persistence, including configuration of the RedisConnectionFactory, session usage, and bootstrap of SpringSession.
Don't Wait! Develop Responsive Applications with Java EE7 InsteadWASdev Community
ย
The document discusses how to develop responsive applications with Java EE7. It focuses on using asynchronous processing and non-blocking I/O to maximize throughput and handle many requests. Key technologies discussed include JAX-RS 2.0 asynchronous processing, the Concurrency Utilities, the WebSocket API, and non-blocking I/O in Servlet 3.1. Code examples are provided for implementing asynchronous processing using these different Java EE 7 technologies.
1. Spring MVC is the web framework module of the Spring Framework, providing MVC architecture support and web request handling capabilities.
2. The DispatcherServlet is central to Spring MVC and handles incoming web requests, passing them to controllers for processing and returning a model and view.
3. Controllers handle requests and return a model and view, with the view resolver determining how to render the view. Annotations allow specifying request mappings and other configurations.
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.
This document discusses Spring Framework 4.0 and its support for Java 8 features. Spring 4.0 will include first-class support for Java 8 language features like lambda expressions and the new date/time API. It will also support upcoming Java EE 7 specifications. Some initial challenges in supporting Java 8 included differences in bytecode versions and hash algorithm changes. The document provides examples of using Java 8 lambda expressions with Spring's JdbcTemplate. It also discusses the state of Java 8 and tool support as Spring 4.0 development progresses.
This document provides information on servlets including:
- Servlets allow dynamic content and interaction for web applications and can be used to build search engines, e-commerce sites, and more.
- Servlets have better performance than CGI since they remain loaded in memory between requests rather than starting a new process for each request.
- Servlets follow a request-response lifecycle and provide APIs to handle HTTP requests and responses through the Servlet, HttpServletRequest, and HttpServletResponse interfaces.
This document provides an overview of server-side web programming and different technologies used to create dynamic web pages, including Common Gateway Interface (CGI), servlets, and JavaServer Pages (JSP). CGI allows building dynamic web sites by running programs on the server that can generate HTML responses. Servlets provide a Java-based alternative to CGI with improved performance, portability, and security. Servlets use a request-response model and are executed by a servlet container. JSP is a technology that simplifies web page programming by mixing static elements like HTML with scripting code.
ASP.NET MVC 4 Request Pipeline InternalsLukasz Lysik
ย
This is a presentation about ASP.NET MVC 4 request pipeline, presented on Study Group meeting. It mainly contains analysis of MVC framework's source code.
The document provides an introduction to Java web technology and servlets. It discusses HTTP and its request/response model. It describes common HTTP methods like GET and POST, and explains the difference between the two. It also covers the servlet lifecycle, web containers, and setting up a servlet development environment.
Spring MVC is a framework for building Java web applications in Spring. It uses the MVC architectural pattern to decouple the different parts of the application. The framework provides features like controllers to handle requests, models to manage data, and views to render the model for the user. It aims to make developing enterprise applications simple while maintaining power and flexibility.
The document provides an introduction to the Spring MVC framework. It describes key concepts such as MVC architecture, dependency injection, configuration of the DispatcherServlet, mapping requests to controllers, and defining views. It also discusses configuring other features like file uploads, scheduling, logging, security, and exceptions handling. The document encourages enrolling in a Udemy course for more details on using Spring MVC.
Java Spring MVC Framework with AngularJS by Google and HTML5Tuna Tore
ย
The document provides an introduction to the Spring MVC framework. It describes key concepts such as MVC architecture, dependency injection, configuration of the DispatcherServlet, mapping requests to controllers, and defining views. It also discusses configuring ORM/JPA with Hibernate, sending emails, security, exceptions handling, and accessing REST services with RestTemplate. The document aims to give developers an overview of building web applications with Spring MVC.
This document provides an introduction to Spring MVC and its core concepts. It discusses the Model-View-Controller (MVC) architecture that Spring MVC is based on, including the model, view and controller components. It also describes the request processing lifecycle in Spring MVC, from the client request to the controller processing to view resolution. Additionally, it covers important Spring MVC concepts like context configuration, context hierarchy, and view resolvers.
Apache Wicket is a Java web application framework that uses a component-based programming model to build web UIs, allowing developers to treat page elements like buttons and labels as objects and handle events like clicks. It aims to bridge the gap between desktop and web development by enabling an event-driven programming style and component hierarchy similar to Swing. Wicket pages are composed of reusable Java components that correspond to HTML elements, avoiding the impedance mismatch between Java and HTTP programming models.
The document discusses ASP.NET MVC framework concepts including:
- MVC architecture divides applications into models, views, and controllers. Models manage state, views display UI, and controllers handle user input and choose views.
- Advantages of MVC include clean separation of concerns, testable UI, reuse of views/models, and organized code.
- The Razor view engine renders HTML from dynamic server-side code using a specially designed parser.
- ASP.NET MVC classes are in the System.Web.Mvc namespace which contains controllers, views, and other core classes.
A Walking Tour of (almost) all of Springdom Joshua Long
ย
this is the deck for my 3+ hour walking tour talk that I give as a workshop at various conferences. This talk introduces practically everything in Spring -- come into the talk unaware of the concepts or frameworks and leave with a working knowledge of all the frameworks, and of all the applications for the technologies.
The document provides an overview of Spring MVC and best practices for implementing the MVC pattern with Spring. It discusses the basic components of MVC - Model, View, Controller - and how Spring splits code into these areas. It describes annotations used in Spring MVC like @Controller, @RequestMapping, and @ModelAttribute. It also covers common tasks like handling user input, populating the model, creating forms, and using Bean Validation. Finally, it discusses additional topics like view resolvers, exception handling, and file uploads.
Spring 5 includes several major changes such as Java 9 compatibility, support for Java EE 8, and reactive programming support using WebFlux and router functions. It also upgrades dependencies to newer versions including JDK 8+, upgrades testing to support JUnit 5, and deprecates some older technologies. Performance has been enhanced through faster component scanning and other optimizations.
Struts An Open-source Architecture for Web Applicationselliando dias
ย
The document provides an overview of Struts, an open-source MVC framework for building web applications in Java, discussing how to install and configure Struts, its core concepts like the MVC pattern, and how to develop applications using Struts including creating forms, actions, and tag libraries.
Es gibt kaum ein Thema, das im Enterprise-Umfeld so umstritten ist wie die Wahl des richtigen Webframeworks. Die perfekte Universallรถsung gibt es wie so oft nicht, und Unwissenheit รผber Vor- und Nachteile verschiedener Ansรคtze fรผhrt hรคufig zu folgenschweren Fehlentscheidungen. Dabei kรถnnen oftmals einfache grundsรคtzliche Fragestellungen die Auswahl drastisch minimieren. Der Vortrag bietet einen praxisnahen รberblick zu existierenden Ansรคtzen fรผr MVC-Webframeworks im Java-Umfeld (Component-oriented vs. Action-oriented) und beleuchtet zusรคtzlich ihre jeweiligen Vor- und Nachteile.
Model-View-Controller (MVC) is an architectural pattern that separates application logic and user interface permitting independent development and testing. ASP.NET MVC uses this pattern by separating domain logic, business rules (model), presentation (view), and user input processing (controller). This differs from ASP.NET Web Forms which uses server-side controls and page lifecycles. ASP.NET MVC supports test-driven development, dependency injection, and separation of concerns which improves extensibility and maintainability compared to Web Forms.
This document provides an introduction to Java servlet technology. It discusses how servlets address limitations of CGI scripts by providing a portable way to generate dynamic web content from the server side using Java. Key topics covered include the servlet interface, lifecycle, and advantages over CGI such as improved performance and portability. Configuration and use of servlets within Eclipse and Tomcat are also explained.
This document discusses using WebSockets for bidirectional communication between a GWT client and server. It provides an overview of setting up WebSocket connections on both the client and server sides in GWT, including writing a JSNI wrapper to initialize the WebSocket on the client. It also discusses using GWT's existing RPC serialization mechanism to serialize and deserialize Java objects sent over the WebSocket connection, avoiding the need for additional serialization libraries. Code examples are provided for initializing the WebSocket and handling messages on both the client and server sides, as well as using GWT's serialization streams to serialize and deserialize objects between the client and server.
Spring in the Cloud - using Spring with Cloud FoundryJoshua Long
ย
This talk's about using the power of the Spring framework with Cloud Foundry, the open source PaaS (platform as-a-service) from VMware. This is a bit more deep an introduction than my other Spring and Cloud Foundry talk, and so I've kept both, while encouraging people to check this one out, first.
Easy integration of Bluemix services with your applicationsJack-Junjie Cai
ย
This presentation talks about how your Java EE and node.js applications can easily consume various cloud services available in the IBM Bluemix cloud platform. IBM Bluemix is based CloudFoundry.
This power point presentation provides an overview of advance Java topics including servlets, session handling, database handling, JSP, Struts, MVC, and Hibernate. It begins with a brief introduction of Java and its history. It then discusses advance Java topics like J2EE, servlets, session handling using different techniques. It also covers database handling using JDBC and topics like JSP, Struts framework, MVC pattern, Tiles framework, and Hibernate for object-relational mapping.
This document discusses ASP.NET MVC, an alternative web development framework to ASP.NET Web Forms. It provides an overview of MVC patterns and how they are implemented in ASP.NET MVC, including features like controllers, actions, views, routing and unit testing support. Key benefits of ASP.NET MVC cited include testability, flexibility and separation of concerns compared to Web Forms. A sample application is outlined to demonstrate typical MVC concepts and components.
The document discusses strategies for building scalable applications. It introduces the concept of a "scale cube" with three axes: horizontal duplication for scaling stateless apps, data partitioning, and bounded contexts. It provides examples of using various technologies like RabbitMQ, Redis, MongoDB, Neo4j, Couchbase, Hadoop, and Spring XD to address different areas of the scale cube. The document emphasizes that building adaptive, scalable applications is challenging and recommends approaches like microservices and separating applications into bounded contexts.
Josh Long presents on Spring Boot, an approach to building stand-alone, production-grade Spring based applications. He discusses how Spring Boot makes it easy to create Spring applications with embedded Tomcat, Jetty or Undertow with minimum fuss. The presentation also covers how to easily add RESTful services, security, production-ready features like metrics, health checks and externalized configuration using Spring Boot.
Josh Long is a Spring Developer Advocate at Pivotal. He discusses various Spring and microservices related topics including:
- The single responsibility principle and how it relates to microservices and Unix tools.
- Exposing services simply using REST which has no strict rules but embraces HTTP verbs and status codes.
- The Richardson Maturity Model for grading APIs on their REST compliance from Level 0 to Level 3.
- Security topics like OAuth, SSL/TLS, and ensuring applications are production ready with monitoring and management.
Slides from my talk introducing Spring Boot. Unfortunately, this talk is 90% live-coding, so I'll post the relevant video recording here when it's available.
This document contains information about Josh Long, including his contact details, links to his work, and information about the Spring IO platform. It includes diagrams showing the architecture of Spring IO and its various modules. It also contains slides from one of Josh Long's presentations promoting Spring IO and its features, including Spring Boot, reactive programming, Java 8 support, REST design, security, and mobile development.
Spring, now part of Pivotal, continues to innovate and support next generation workloads. In this talk, I introduce some of the exciting new Spring technologies supporting websockets, Java 8, Java EE 7, data ingestion and stream processing, NoSQL and Hadoop, and production-ready REST, _and_ I introduce tools designed to expedite ramp-up time for teams who want to deliver, quickly.
Multi Client Development with Spring for SpringOne 2GX 2013 with Roy ClarksonJoshua Long
ย
The document discusses Representational State Transfer (REST), an architectural style for building distributed hypermedia systems. It describes REST as being based on HTTP and having no hard rules, instead focusing on using HTTP verbs like GET, POST, PUT, DELETE and status codes to transfer representations of resources between clients and servers. It also discusses content negotiation, HATEOAS, the Richardson Maturity Model for grading RESTful implementations, and how Spring frameworks like Spring MVC, Spring Data REST, and Spring Security can be used to build RESTful services and clients.
This talk introduces Spring's REST stack - Spring MVC, Spring HATEOAS, Spring Data REST, Spring Security OAuth and Spring Social - while refining an API to move higher up the Richardson maturity model
The document discusses tailoring Spring for custom usage. It explores extension points in the Spring framework and how to exploit lesser known but powerful hooks. The agenda includes demos of introducing the tool chain, basic dependency injection, BeanPostProcessor, AspectJ, life cycle callbacks, scopes, FactoryBeans, Spring Expression Language, profiles, proxies, resources, object to XML marshalling, REST, transactions, caching, custom views and view resolvers, writing adapters in Spring Integration, and more. QA is also on the agenda.
The document discusses Spring Framework updates including versions 3.1, 3.2, and 3.3. Key features of Spring 3.1 include environment profiles for activating bean definitions in different environments, Java-based application configuration, and declarative caching. Spring 3.2 will include a Gradle build system and GitHub contributions. Spring 3.3 will add support for Java SE 8 features like lambda expressions and the Java EE 7 API. The document provides code examples of using these new Spring features.
Integration and Batch Processing on Cloud FoundryJoshua Long
ย
This talk explores the new possibilities for scale by using Spring Integration, Spring Batch and RabbitMQ on Cloud Foundry, the open source PaaS from VMWare.
using Spring and MongoDB on Cloud FoundryJoshua Long
ย
This talk introduces how to build MongoDB applications with Spring Data MongoDB on Cloud Foundry. Spring Data provides rich support for easily building applications that work on multiple data stores.
The document provides an overview of getting started with Cloud Foundry. It discusses registering for a Cloud Foundry account, installing the vmc CLI tool on Windows and Mac, and the various ways Cloud Foundry can be used to deploy applications. It also covers key Cloud Foundry features like choice of runtimes, choice of cloud providers, scaling applications, developing applications using Eclipse/STS, and using services in applications.
A Spring Batch bootcamp! Spring Batch is the open source batch processing framework from SpringSource, makes of the Spring framework. http://www.springsource.org/spring-batch
The Cloud Foundry Bootcamp document provides an overview of a Cloud Foundry bootcamp presented in Portland in 2012. It was written by Chris Richardson and presented by Monica Wilkinson and Josh Long. The agenda covers why Platform as a Service (PaaS) matters to developers, an overview of Cloud Foundry, getting started with Cloud Foundry, the Cloud Foundry architecture, using Micro Cloud Foundry, and consuming Cloud Foundry services.
Spring and Cloud Foundry; a Marriage Made in HeavenJoshua Long
ย
Spring and Cloud Foundry: a Marriage Made in Heaven. This talk introduces how to build Spring applications on top of Cloud Foundry, the open source PaaS from VMware
The Spring framework packs a lot of punch, out of the box! The surface-level component model's extraordinarily flexible, and works well with in most situations, but the real power of Spring lays just underneath, in the numerous SPIs that Spring exposes, so that you can tailor the component model to your own use cases. Spring's SPI's are a great example of what Bob Martin describes as the open-closed principle, and it provides the solid underpinnings upon which the other Spring frameworks, including Spring Integration, Spring MVC and Spring Batch are built. In this talk, Josh Long, the Spring developer advocate from SpringSource, provides a walking tour of Spring's extension points.
In this talk, originally presented at JavaZone, in Oslo, Norway, I introduce the broad swath of supported inversion-of-control options in Spring's component model, and then introduce some more advanced features of the component model.
Enterprise Integration and Batch Processing on Cloud FoundryJoshua Long
ย
Spring Integration, RabbitMQ and Spring Batch are natural vehicles for building bigger, better, more powerful applications on top of the scale that only Cloud Foundry can provide. This is the deck from my Spring IO 2012 talk.
This document discusses deploying applications to Cloud Foundry using Spring, Vaadin, and Cloud Foundry. It provides an overview of deploying a Java application using the vmc command line tool and Spring Tool Suite. It also covers services, runtime choices, and the benefits of using open source Cloud Foundry which avoids vendor lock-in.
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxshyamraj55
ย
Weโre bringing the TDX energy to our community with 2 power-packed sessions:
๐ ๏ธ Workshop: MuleSoft for Agentforce
Explore the new version of our hands-on workshop featuring the latest Topic Center and API Catalog updates.
๐ Talk: Power Up Document Processing
Dive into smart automation with MuleSoft IDP, NLP, and Einstein AI for intelligent document workflows.
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxJustin Reock
ย
Building 10x Organizations with Modern Productivity Metrics
10x developers may be a myth, but 10x organizations are very real, as proven by the influential study performed in the 1980s, โThe Coding War Games.โ
Right now, here in early 2025, we seem to be experiencing YAPP (Yet Another Productivity Philosophy), and that philosophy is converging on developer experience. It seems that with every new method we invent for the delivery of products, whether physical or virtual, we reinvent productivity philosophies to go alongside them.
But which of these approaches actually work? DORA? SPACE? DevEx? What should we invest in and create urgency behind today, so that we donโt find ourselves having the same discussion again in a decade?
"Client Partnership โ the Path to Exponential Growth for Companies Sized 50-5...Fwdays
ย
Why the "more leads, more sales" approach is not a silver bullet for a company.
Common symptoms of an ineffective Client Partnership (CP).
Key reasons why CP fails.
Step-by-step roadmap for building this function (processes, roles, metrics).
Business outcomes of CP implementation based on examples of companies sized 50-500.
Procurement Insights Cost To Value Guide.pptxJon Hansen
ย
Procurement Insights integrated Historic Procurement Industry Archives, serves as a powerful complement โ not a competitor โ to other procurement industry firms. It fills critical gaps in depth, agility, and contextual insight that most traditional analyst and association models overlook.
Learn more about this value- driven proprietary service offering here.
Learn the Basics of Agile Development: Your Step-by-Step GuideMarcel David
ย
New to Agile? This step-by-step guide is your perfect starting point. "Learn the Basics of Agile Development" simplifies complex concepts, providing you with a clear understanding of how Agile can improve software development and project management. Discover the benefits of iterative work, team collaboration, and flexible planning.
Buckeye Dreamin 2024: Assessing and Resolving Technical DebtLynda Kane
ย
Slide Deck from Buckeye Dreamin' 2024 presentation Assessing and Resolving Technical Debt. Focused on identifying technical debt in Salesforce and working towards resolving it.
Technology Trends in 2025: AI and Big Data AnalyticsInData Labs
ย
At InData Labs, we have been keeping an ear to the ground, looking out for AI-enabled digital transformation trends coming our way in 2025. Our report will provide a look into the technology landscape of the future, including:
-Artificial Intelligence Market Overview
-Strategies for AI Adoption in 2025
-Anticipated drivers of AI adoption and transformative technologies
-Benefits of AI and Big data for your business
-Tips on how to prepare your business for innovation
-AI and data privacy: Strategies for securing data privacy in AI models, etc.
Download your free copy nowand implement the key findings to improve your business.
How Can I use the AI Hype in my Business Context?Daniel Lehner
ย
๐๐จ ๐ผ๐ ๐๐ช๐จ๐ฉ ๐๐ฎ๐ฅ๐? ๐๐ง ๐๐จ ๐๐ฉ ๐ฉ๐๐ ๐๐๐ข๐ ๐๐๐๐ฃ๐๐๐ง ๐ฎ๐ค๐ช๐ง ๐๐ช๐จ๐๐ฃ๐๐จ๐จ ๐ฃ๐๐๐๐จ?
Everyoneโs talking about AI but is anyone really using it to create real value?
Most companies want to leverage AI. Few know ๐ต๐ผ๐.
โ What exactly should you ask to find real AI opportunities?
โ Which AI techniques actually fit your business?
โ Is your data even ready for AI?
If youโre not sure, youโre not alone. This is a condensed version of the slides I presented at a Linkedin webinar for Tecnovy on 28.04.2025.
This is the keynote of the Into the Box conference, highlighting the release of the BoxLang JVM language, its key enhancements, and its vision for the future.
What is Model Context Protocol(MCP) - The new technology for communication bw...Vishnu Singh Chundawat
ย
The MCP (Model Context Protocol) is a framework designed to manage context and interaction within complex systems. This SlideShare presentation will provide a detailed overview of the MCP Model, its applications, and how it plays a crucial role in improving communication and decision-making in distributed systems. We will explore the key concepts behind the protocol, including the importance of context, data management, and how this model enhances system adaptability and responsiveness. Ideal for software developers, system architects, and IT professionals, this presentation will offer valuable insights into how the MCP Model can streamline workflows, improve efficiency, and create more intuitive systems for a wide range of use cases.
Role of Data Annotation Services in AI-Powered ManufacturingAndrew Leo
ย
From predictive maintenance to robotic automation, AI is driving the future of manufacturing. But without high-quality annotated data, even the smartest models fall short.
Discover how data annotation services are powering accuracy, safety, and efficiency in AI-driven manufacturing systems.
Precision in data labeling = Precision on the production floor.
Mobile App Development Company in Saudi ArabiaSteve Jonas
ย
EmizenTech is a globally recognized software development company, proudly serving businesses since 2013. With over 11+ years of industry experience and a team of 200+ skilled professionals, we have successfully delivered 1200+ projects across various sectors. As a leading Mobile App Development Company In Saudi Arabia we offer end-to-end solutions for iOS, Android, and cross-platform applications. Our apps are known for their user-friendly interfaces, scalability, high performance, and strong security features. We tailor each mobile application to meet the unique needs of different industries, ensuring a seamless user experience. EmizenTech is committed to turning your vision into a powerful digital product that drives growth, innovation, and long-term success in the competitive mobile landscape of Saudi Arabia.
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPathCommunity
ย
Join this UiPath Community Berlin meetup to explore the Orchestrator API, Swagger interface, and the Test Manager API. Learn how to leverage these tools to streamline automation, enhance testing, and integrate more efficiently with UiPath. Perfect for developers, testers, and automation enthusiasts!
๐ Agenda
Welcome & Introductions
Orchestrator API Overview
Exploring the Swagger Interface
Test Manager API Highlights
Streamlining Automation & Testing with APIs (Demo)
Q&A and Open Discussion
Perfect for developers, testers, and automation enthusiasts!
๐ Join our UiPath Community Berlin chapter: https://community.uipath.com/berlin/
This session streamed live on April 29, 2025, 18:00 CET.
Check out all our upcoming UiPath Community sessions at https://community.uipath.com/events/.
Leading AI Innovation As A Product Manager - Michael JidaelMichael Jidael
ย
Unlike traditional product management, AI product leadership requires new mental models, collaborative approaches, and new measurement frameworks. This presentation breaks down how Product Managers can successfully lead AI Innovation in today's rapidly evolving technology landscape. Drawing from practical experience and industry best practices, I shared frameworks, approaches, and mindset shifts essential for product leaders navigating the unique challenges of AI product development.
In this deck, you'll discover:
- What AI leadership means for product managers
- The fundamental paradigm shift required for AI product development.
- A framework for identifying high-value AI opportunities for your products.
- How to transition from user stories to AI learning loops and hypothesis-driven development.
- The essential AI product management framework for defining, developing, and deploying intelligence.
- Technical and business metrics that matter in AI product development.
- Strategies for effective collaboration with data science and engineering teams.
- Framework for handling AI's probabilistic nature and setting stakeholder expectations.
- A real-world case study demonstrating these principles in action.
- Practical next steps to begin your AI product leadership journey.
This presentation is essential for Product Managers, aspiring PMs, product leaders, innovators, and anyone interested in understanding how to successfully build and manage AI-powered products from idea to impact. The key takeaway is that leading AI products is about creating capabilities (intelligence) that continuously improve and deliver increasing value over time.
Leading AI Innovation As A Product Manager - Michael JidaelMichael Jidael
ย
Multi Client Development with Spring
1. Multi Client Development with Spring MVC
@ Java2Days
Josh Long
Spring Developer Advocate
SpringSource, a Division of VMware
http://www.joshlong.com || @starbuxman || [email protected]
ยฉ 2009 VMware Inc. All rights reserved
3. About Josh Long
Spring Developer Advocate
twitter: @starbuxman
[email protected]
Contributor To:
โขSpring Integration
โขSpring Batch
โขSpring Hadoop
โขActiviti Workflow Engine
โขAkka Actor engine
3
4. Why Are We Here?
โ Software entities (classes,
modules, functions, etc.) should
be open for extension, but closed
for modification.
โ
-Bob Martin
4
6. Springโs aim:
bring simplicity to java development
data
web tier
batch integration & access
& service tier mobile
processing messaging / NoSQL /
RIA
Big Data
The Spring framework
the cloud: lightweight traditional
CloudFoundry WebSphere
tc Server
Google App Engine JBoss AS
Tomcat
Amazon BeanStalk WebLogic
Jetty
Others (on legacy versions, too!)
6
9. New in 3.1: XML-free web applications
๏ง In a servlet 3 container, you can also use Java configuration,
negating the need for web.xml:
public class SampleWebApplicationInitializer implements WebApplicationInitializer {
public void onStartup(ServletContext sc) throws ServletException {
AnnotationCon๏ฌgWebApplicationContext ac =
new AnnotationCon๏ฌgWebApplicationContext();
ac.setServletContext(sc);
ac.scan( โa.package.full.of.servicesโ, โa.package.full.of.controllersโ );
sc.addServlet("spring", new DispatcherServlet(webContext));
}
}
9
10. Thin, Thick, Web, Mobile and Rich Clients: Web Core
๏ง Spring Dispatcher Servlet
โข Objects donโt have to be web-specific.
โข Spring web supports lower-level web machinery: โ
โข HttpRequestHandler (supports remoting: Caucho, Resin, JAX RPC)
โข DelegatingFilterProxy.
โข HandlerInterceptor wraps requests to HttpRequestHandlers
โข ServletWrappingController lets you force requests to a servlet through the Spring Handler chain
โข OncePerRequestFilter ensures that an action only occurs once, no matter how many filters are
applied. Provides a nice way to avoid duplicate filters
โข Spring provides access to the Spring application context using
WebApplicationContextUtils, which has a static method to look up the context, even in
environments where Spring isnโt managing the web components
11. Thin, Thick, Web, Mobile and Rich Clients: Web Core
๏ง Spring provides the easiest way to integrate with your web
framework of choice
โข Spring Faces for JSF 1 and 2
โข Struts support for Struts 1
โข Tapestry, Struts 2, Stripes, Wicket, Vaadin, Play framework, etc.
โข GWT, Flex
13. The Anatomy of a Spring MVC @Controller
Spring MVC configuration - config
@Controller
public class CustomerController {
}
13
14. The Anatomy of a Spring MVC @Controller
Spring MVC configuration - config
@Controller
public class CustomerController {
@RequestMapping(value=โ/url/of/my/resourceโ)
public String processTheRequest() {
// ...
return โhomeโ;
}
}
GET http://127.0.0.1:8080/url/of/my/resource
14
15. The Anatomy of a Spring MVC @Controller
Spring MVC configuration - config
@Controller
public class CustomerController {
@RequestMapping(value=โ/url/of/my/resourceโ,
method = RequestMethod.GET)
public String processTheRequest() {
// ...
return โhomeโ;
}
}
GET http://127.0.0.1:8080/url/of/my/resource
15
16. The Anatomy of a Spring MVC @Controller
Spring MVC configuration - config
@Controller
public class CustomerController {
@RequestMapping(value=โ/url/of/my/resourceโ,
method = RequestMethod.GET)
public String processTheRequest( HttpServletRequest request) {
String contextPath = request.getContextPath();
// ...
return โhomeโ;
}
}
GET http://127.0.0.1:8080/url/of/my/resource
16
17. The Anatomy of a Spring MVC @Controller
Spring MVC configuration - config
@Controller
public class CustomerController {
@RequestMapping(value=โ/url/of/my/resourceโ,
method = RequestMethod.GET)
public String processTheRequest( @RequestParam(โsearchโ) String searchQuery ) {
// ...
return โhomeโ;
}
}
GET http://127.0.0.1:8080/url/of/my/resource?search=Spring
17
18. The Anatomy of a Spring MVC @Controller
Spring MVC configuration - config
@Controller
public class CustomerController {
@RequestMapping(value=โ/url/of/my/{id}โ,
method = RequestMethod.GET)
public String processTheRequest( @PathVariable(โidโ) Long id) {
// ...
return โhomeโ;
}
}
GET http://127.0.0.1:8080/url/of/my/2322
18
19. The Anatomy of a Spring MVC @Controller
Spring MVC configuration - config
@Controller
public class CustomerController {
@RequestMapping(value=โ/url/of/my/{id}โ )
public String processTheRequest( @PathVariable(โidโ) Long customerId,
Model model ) {
model.addAttribute(โcustomerโ, service.getCustomerById( customerId ) );
return โhomeโ;
}
@Autowired CustomerService service;
}
GET http://127.0.0.1:8080/url/of/my/232
19
20. The Anatomy of a Spring MVC @Controller
Spring MVC configuration - config
@Controller
public class CustomerController {
@RequestMapping(value=โ/url/of/my/resourceโ,
method = RequestMethod.GET)
public String processTheRequest( HttpServletRequest request, Model model) {
return โhomeโ;
}
}
20
21. The Anatomy of a Spring MVC @Controller
Spring MVC configuration - config
@Controller
public class CustomerController {
@RequestMapping(value=โ/url/of/my/resourceโ,
method = RequestMethod.GET)
public View processTheRequest( HttpServletRequest request, Model model) {
return new XsltView(...);
}
}
21
22. The Anatomy of a Spring MVC @Controller
Spring MVC configuration - config
@Controller
public class CustomerController {
@RequestMapping(value=โ/url/of/my/resourceโ,
method = RequestMethod.GET)
public InputStream processTheRequest( HttpServletRequest request, Model model) {
return new FileInputStream( ...) ;
}
}
22
23. DEMO
๏ง Demos
โข Simple Spring MVC based Application
Not confidential. Tell everyone.
31. Thin, Thick, Web, Mobile and Rich Clients: REST
๏ง Origin
โข The term Representational State Transfer was introduced and defined in 2000 by Roy
Fielding in his doctoral dissertation.
๏ง His paper suggests these four design principles:
โข Use HTTP methods explicitly.
โข POST, GET, PUT, DELETE
โข CRUD operations can be mapped to these existing methods
โข Be stateless.
โข State dependencies limit or restrict scalability
โข Expose directory structure-like URIs.
โข URIโs should be easily understood
โข Transfer XML, JavaScript Object Notation (JSON), or both.
โข Use XML or JSON to represent data objects or attributes
CONFIDENTIAL
31
32. REST on the Server
๏ง Spring MVC is basis for REST support
โข Springโs server side REST support is based on the standard controller model
๏ง JavaScript and HTML5 can consume JSON-data payloads
33. REST on the Client
๏ง RestTemplate
โข provides dead simple, idiomatic RESTful services consumption
โข can use Spring OXM, too.
โข Spring Integration and Spring Social both build on the RestTemplate where possible.
๏ง Spring supports numerous converters out of the box
โข JAXB
โข JSON (Jackson)
34. Building clients for your RESTful services: RestTemplate
๏ง Google search example
RestTemplate restTemplate = new RestTemplate();
String url = "https://ajax.googleapis.com/ajax/services/search/web?v=1.0&q={query}";
String result = restTemplate.getForObject(url, String.class, "SpringSource");
๏ง Multiple parameters
RestTemplate restTemplate = new RestTemplate();
String url = "http://example.com/hotels/{hotel}/bookings/{booking}";
String result = restTemplate.getForObject(url, String.class, "42", โ21โ);
CONFIDENTIAL
34
35. Thin, Thick, Web, Mobile and Rich Clients: RestTemplate
๏ง RestTemplate class is the heart the client-side story
โข Entry points for the six main HTTP methods
โข DELETE - delete(...)
โข GET - getForObject(...)
โข HEAD - headForHeaders(...)
โข OPTIONS - optionsForAllow(...)
โข POST - postForLocation(...)
โข PUT - put(...)
โข any HTTP operation - exchange(...) and execute(...)
CONFIDENTIAL
35
36. The Anatomy of a Spring MVC @Controller
Spring MVC configuration - config
@Controller
public class CustomerController {
@RequestMapping(value=โ/url/of/my/resourceโ,
method = RequestMethod.GET)
public @ResponseBody Customer processTheRequest( ... ) {
Customer c = service.getCustomerById( id) ;
return c;
}
@Autowired CustomerService service;
}
36
37. The Anatomy of a Spring MVC @Controller
Spring MVC configuration - config
@Controller
public class CustomerController {
@RequestMapping(value=โ/url/of/my/someurlโ,
method = RequestMethod.POST)
public String processTheRequest( @RequestBody Customer postedCustomerObject) {
// ...
return โhomeโ;
}
}
POST http://127.0.0.1:8080/url/of/my/someurl
37
38. The Anatomy of a Spring MVC @Controller
Spring MVC configuration - config
@Controller
public class CustomerController {
@RequestMapping(value=โ/url/of/my/{id}โ,
method = RequestMethod.POST)
public String processTheRequest( @PathVariable(โidโ) Long customerId,
@RequestBody Customer postedCustomerObject) {
// ...
return โhomeโ;
}
}
POST http://127.0.0.1:8080/url/of/my/someurl
38
39. What About the Browsers, Man?
โข Problem: modern browsers only speak GET and POST
โข Solution: use Springโs HiddenHttpMethodFilter only then send _method request
parameter in the request
<๏ฌlter>
<๏ฌlter-name>hiddenHttpMethodFilter</๏ฌlter-name>
<๏ฌlter-class>org.springframework.web.๏ฌlter.HiddenHttpMethodFilter</๏ฌlter-class
</๏ฌlter>
<๏ฌlter-mapping>
<๏ฌlter-name>hiddenHttpMethodFilter</๏ฌlter-name>
<url-pattern>/</url-pattern>
<servlet-name>appServlet</servlet-name>
</๏ฌlter-mapping>
42. Thin, Thick, Web, Mobile and Rich Clients: Mobile
๏ง Best strategy? Develop Native
โข Fallback to client-optimized web applications
๏ง Spring MVC 3.1 mobile client-specific content negotiation and
rendering
โข for other devices
โข (there are other devices besides Android??)
42
45. Thin, Thick, Web, Mobile and Rich Clients: Mobile
๏ง Spring REST is ideal for mobile devices
๏ง Spring MVC 3.1 mobile client-specific content
negotiation and rendering
โข for other devices
๏ง Spring Android
โข RestTemplate
45
47. Thin, Thick, Web, Mobile and Rich Clients: Mobile
CustomerServiceClient - client
! private <T> T extractResponse( ResponseEntity<T> response) {
! ! if (response != null && response().value() == 200) {
! ! ! return response.getBody();
! ! }
! ! throw new RuntimeException("couldn't extract response.");
! }
! @Override
! public Customer updateCustomer(long id, String fn, String ln) {
! ! String urlForPath = urlForPath("customer/{customerId}");!!
! ! return extractResponse(this.restTemplate.postForEntity(
urlForPath, new Customer(id, fn, ln), Customer.class, id));
! }
47
48. Thin, Thick, Web, Mobile and Rich Clients: Mobile
๏ง Demos:
โข consuming the Spring REST service from Android
49. And The REST of it
โข Spring Data REST - exposes (JPA, MongoDB, GemFire, Neo4J, Redis) repositories built
on Spring Data repositories (See my friend Sergiโs talk!)
โข Spring HATEOAS - take your REST-fu to the next level with support for HTTP as the
engine of application state
โข Spring Security OAuth - secure RESTful web services using OAuth, the same security
technology that Twitter, Facebook, etc.
โข Spring Social - RestTemplate is powerful, but some APIs are overwhelming, and OAuth
client communication can be daunting. Spring Social makes it easier.
#4: Hello, thank you or having me. Im pleased to have the opportunity to introduce you today to Spring and the SpringSource Tool Suite \n\nMy anem is Josh Long. I serve as the developer advocate for the Spring framework. I&#x2019;ve used it in earnest and advocated it for many years now. i&#x2019;m an author on 3 books on the technology, as well as a comitter to many of the Spring projects. Additionally, I take community activism very seriously and do my best to participate in the community. Sometimes this means answering question on Twitter, or in the forums, or helping contribute to the InfoQ.com and Artima.com communities\n
#5: Hello, thank you or having me. Im pleased to have the opportunity to introduce you today to Spring and the SpringSource Tool Suite \n\nMy anem is Josh Long. I serve as the developer advocate for the Spring framework. I&#x2019;ve used it in earnest and advocated it for many years now. i&#x2019;m an author on 3 books on the technology, as well as a comitter to many of the Spring projects. Additionally, I take community activism very seriously and do my best to participate in the community. Sometimes this means answering question on Twitter, or in the forums, or helping contribute to the InfoQ.com and Artima.com communities\n
#8: these different framerworks let u tackle any problem youre likely to want to solve today \n- we support javee1.4 + 1.5 + 1.6; \n\nsits above target platform \nruns in cloud \n\n
#12: talk about how convenient the messaging support is, then roll back and start looking at how u might do the same thing manually. Explain that many of the pices are already there, and then seguqe into a discussion about the core Spring APIs. Lets imagine we&#x2019;re going to build ourselves a file system poller to notify us of when something&#x2019;s happened on the file system\n\n
#13: talk about how convenient the messaging support is, then roll back and start looking at how u might do the same thing manually. Explain that many of the pices are already there, and then seguqe into a discussion about the core Spring APIs. Lets imagine we&#x2019;re going to build ourselves a file system poller to notify us of when something&#x2019;s happened on the file system\n\n
#25: talk about how convenient the messaging support is, then roll back and start looking at how u might do the same thing manually. Explain that many of the pices are already there, and then seguqe into a discussion about the core Spring APIs. Lets imagine we&#x2019;re going to build ourselves a file system poller to notify us of when something&#x2019;s happened on the file system\n\n
#35: talk about how convenient the messaging support is, then roll back and start looking at how u might do the same thing manually. Explain that many of the pieces are already there, and then seguqe into a discussion about the core Spring APIs. Lets imagine we&#x2019;re going to build ourselves a file system poller to notify us of when something&#x2019;s happened on the file system\n\n
#36: talk about how convenient the messaging support is, then roll back and start looking at how u might do the same thing manually. Explain that many of the pieces are already there, and then seguqe into a discussion about the core Spring APIs. Lets imagine we&#x2019;re going to build ourselves a file system poller to notify us of when something&#x2019;s happened on the file system\n\n
#42: talk about how convenient the messaging support is, then roll back and start looking at how u might do the same thing manually. Explain that many of the pices are already there, and then seguqe into a discussion about the core Spring APIs. Lets imagine we&#x2019;re going to build ourselves a file system poller to notify us of when something&#x2019;s happened on the file system\n\n
#43: talk about how convenient the messaging support is, then roll back and start looking at how u might do the same thing manually. Explain that many of the pices are already there, and then seguqe into a discussion about the core Spring APIs. Lets imagine we&#x2019;re going to build ourselves a file system poller to notify us of when something&#x2019;s happened on the file system\n\n
#46: talk about how convenient the messaging support is, then roll back and start looking at how u might do the same thing manually. Explain that many of the pices are already there, and then seguqe into a discussion about the core Spring APIs. Lets imagine we&#x2019;re going to build ourselves a file system poller to notify us of when something&#x2019;s happened on the file system\n\n
#51: talk about how convenient the messaging support is, then roll back and start looking at how u might do the same thing manually. Explain that many of the pices are already there, and then seguqe into a discussion about the core Spring APIs. Lets imagine we&#x2019;re going to build ourselves a file system poller to notify us of when something&#x2019;s happened on the file system\n\n
#53: talk about how convenient the messaging support is, then roll back and start looking at how u might do the same thing manually. Explain that many of the pices are already there, and then seguqe into a discussion about the core Spring APIs. Lets imagine we&#x2019;re going to build ourselves a file system poller to notify us of when something&#x2019;s happened on the file system\n\n
#55: talk about how convenient the messaging support is, then roll back and start looking at how u might do the same thing manually. Explain that many of the pices are already there, and then seguqe into a discussion about the core Spring APIs. Lets imagine we&#x2019;re going to build ourselves a file system poller to notify us of when something&#x2019;s happened on the file system\n\n
#56: another example of the fact that often the client side model won&#x2019;t represent the server side model \n\n
#139: talk about how convenient the messaging support is, then roll back and start looking at how u might do the same thing manually. Explain that many of the pices are already there, and then seguqe into a discussion about the core Spring APIs. Lets imagine we&#x2019;re going to build ourselves a file system poller to notify us of when something&#x2019;s happened on the file system\n\n