Course Content
Spring Remoting
- RmiProxyFactoryBean
- RmiServiceExporter
- HessianProxyFactoryBean
- BurlapProxyFactoryBean
- HessianServiceExporter
- BurlapServiceExporter
- HttpInvokerServiceExporter
- HttpInvokerProxyFactoryBean
Spring Caching
- Configuring ehcache namespace
- Ehcache.xml
- "ehcache:proxy"
- "ehcache:caching"
- "ehcache:flushing"
- AnnotationDriven caching
- @cacheable
- @CacheFlush
Soap Webservice Using Spring
- What is Spring Web Services
- Object/XML Impedance Mismatch
- Writing Contract-First Web Services
- Introduction
- Messages
- Data Contract
- Service contract
- Creating the project
- Implementing the Endpoint
- Handling the XML Message
- Routing the Message to the Endpoint
- Publishing the WSDL
- Creating a Web service with Spring-WS
- Transports
- MessageDispatcherServlet
- Wiring up Spring-WS in a DispatcherServlet
- Embedded HTTP Server transport
- @Endpoint
- Endpoint mappings
- Using the client-side API
- WebServiceTemplate
- Sending and receiving a WebServiceMessage
- Sending and receiving POJOs - marshalling and unmarshalling
Introduction to Restful Webservice
- What are restful webservices ?
- RESTful architectural principles
- Addressibility
- Uniform Constrasined interface
- Representation Oriented
- Communicate statelessly
Developing a JAX-RS RESTful Service
- Http Method and URI matching
- Binding Http methods
- @Path
- @Path expressions
- Matrix parameters
- Subresource Locators
- Dynamic Dispatching
- @PathParam
- @MatrixParam
- @QueryParam
- @FormParam
- @HeaderParam
- @CookieParam
- @DefaultValue
- @Encoded
Developing JAX-RS webservice Client
JAX-RS Content Handlers
- javax.ws.rs.core.StreamingOutput
- java.io.InputStream, java.io.Reader
- java.io.File
- byte[]
- String, char[]
- MultivaluedMap and Form Input
- javax.xml.transform.Source
JAXB
- Intro to JAXB
- JAXB JAX-RS Handlers
- JAXB and JSON
- JSON and JSON Schema
- Custom Marshalling
- MessageBodyWriter
- MessageBodyReader
Http Content negotiation
- What is content negotiation?
- Language Negotiation
- Encoding Negotiation
- JAX-RS and Content Negotiation
- Negotiation by URI Patterns
- Negotiation using headers
Scaling JAX-RS Applications
- Caching
- Http Caching
- Expires Header
- Cache-Control
- Revalidation and Conditional GET
- JAXRS and Conditional Updates