Tabla de Contenidos:
  • Preface
  • Web Services Quickstart:
  • Web Service miscellany
  • What good are Web Services?
  • Web Services and service-oriented architecture
  • Very short history of Web Services:
  • From DCE/RPC to XML-RPC
  • Distributed object architecture: a Java example
  • Web Services to the rescue
  • What is REST?:
  • Verbs and opaque nouns
  • Review of HTTP requests and responses
  • HTTP as an API:
  • Two HTTP clients in Java
  • First RESTful example:
  • How the predictions Web Service works
  • Client against the predictions Web Service
  • Why use servlets for RESTful Web Services?
  • What's next?
  • RESTful Web Services: The Service Side:
  • RESTful service as an HttpServlet:
  • Implementation details
  • Sample client calls against the predictions2 service
  • RESTful Web Service as a JAX-RS resource:
  • First JAX-RS Web Service using Jersey
  • Publishing JAX-RS resources with a Java application
  • Publishing JAX-RS resources with Tomcat
  • Adage class
  • JAX-RS generation of XML and JSON responses
  • Porting the predictions Web Service to JAX-RS
  • RESTful Web Service as Restlet resources:
  • Sample calls against the adages2 service
  • Publishing the adages2 Restlet Service without a web server
  • RESTful service as a @WebService provider
  • What's next?
  • Restful Web Services: The Client Side:
  • Perl client against a Java RESTful Web Service
  • Client against the Amazon E-Commerce Service
  • Standalone JAX-B example:
  • Xstream option
  • Another client against the Amazon E-Commerce Service
  • CTA bus-tracker services
  • RESTful clients and WADL documents
  • JAX-RS client API
  • JSON for JavaScript clients:
  • JSONP and Web Services
  • Composed RESTful service with jQuery
  • Ajax polling example
  • What's next?
  • SOAP-Based Web Services:
  • SOAP-based Web Service
  • RandService in two files
  • Clients against the RandService:
  • Java client against the RandService
  • C♯ client against the RandService
  • Perl client against the RandService
  • WSDL service contract in detail:
  • Types section
  • Message section
  • PortType Section
  • Binding section
  • Service section
  • Java and XML schema data type bindings
  • Wrapped and unwrapped document style
  • Wsimport artifacts for the service side
  • SOAP-Based clients against Amazon's E-Commerce Service:
  • Asynchronous clients against SOAP-Based services
  • What's next?
  • SOAP Handlers And Faults:
  • Handler level in SOAP-Based services and clients
  • Handlers and faults in the predictions SOAP service:
  • Backend support classes
  • From the client to the service
  • Signature verification
  • Faults from the application and handler levels
  • Linking the Service-Side handler to the service
  • Handler chain with two handlers
  • SOAP-Based Web Services and binary data
  • Transport level
  • Axis2
  • What's next?
  • Web Services Security:
  • Wire-level security:
  • HTTPS basics
  • Symmetric and asymmetric encryption/decryption
  • How HTTPS provides the three security services
  • HTTPS handshake
  • HttpsURL connection class
  • Very lightweight HTTPS server and client
  • HTTPS in a production-grade web server:
  • Enforcing HTTPS access to a Web Service
  • HTTPS client against the predictions2 service
  • Container-managed security:
  • Linking the service web.xml with Tomcat security realm
  • Client side in users/roles security
  • Using the curl utility for HTTPS testing
  • @WebService under HTTPS with Users/Roles security
  • Using a digested password instead of a password
  • WS-security:
  • Securing a @WebService with WS-security
  • What's next
  • Web Services And Java Application Servers:
  • Web container:
  • Message-oriented middleware
  • Enterprise Java Bean container
  • Naming an lookup service
  • Security provider
  • Client container
  • Database system
  • Toward a lightweight JAS
  • GlassFish basics
  • Servlet-Based Web Services under GlassFish:
  • Example with mixed APIs
  • Interactive Website and SOAP-Based Web Service
  • @WebService as a @Stateless session EJB:
  • Packing and deploying the predictions EJB service
  • Client against the predictions EJB service
  • TomEE: Tomcat with Java EE extensions:
  • Porting the predictions EJB Web Service to TomEE
  • Deploying an EJB in a WAR file
  • Where is the best place to be in Java Web Services?:
  • Back to the question at hand
  • Index.