Course Content
Introduction
Transport Protocols in SOAP
- HttpConduit
Using Https as transport protocol
- Configuring conduit for SSL
- Configuring HttpDestination on the server
- Generating crypto key
- Configuring tomcat to support SSL
- Configuring Https in Jetty
Using JMS as transport protocol
- Configuring Jms as transport protocol in Wsdl
- Configuring address of jms destination
- Using JMS uri
- Using Wsdl extensions
- Configuring Jms endpoint uing JMS
CXF Interceptors,Features and Invokers
- What are interceptors?
- Interceptor Phases
- Interceptor Chainl
- Implementing Custom Interceptor
- Client Side Interceptors
- Server Side Interceptors
- Features in CXF
- Implementing Custom Feature
- Invokers In CXF
- Implementing Custom Invoker
Restful Webservices
- What are restful webservices ?
- RESTful architectural principles
- Addressibility
- Uniform Constrained 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
- Life Cycle and Environment
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
Securing JAX-RS
- Authentication
- Basic Authentication
- Digest Authentication
- Authorization in JAX-RS
- Authorization Annotations
- Enforcing encryption
- Programmatic Security
Wrapping up with differences between
SOAP and REST
Best Practises in REST