RESTful Web Services Development
Course: RWSJE
Duration: 5 Days
Level: I
Course Summary
This course teaches students how to develop, deploy and secure Web services. Eclipse features that streamline Web services development and deployment are covered in depth. SOAP and RESTful web services are included. The concepts taught in this course are reinforced by hands-on lab exercises.
« Hide The Details
Topics Covered In This Course
Java/Eclipse Review
- Java Development
- Tools
- Perspectives and Editors
- Server Configurations
- Debugging Tools
- Project Properties
Web Services Basics
- Service-Oriented Architecture (SOA)
- What are Web Services?
- Web Services Advantages
- Interactions and Component
- Web Services Standards: XML, SOAP, WSDL and UDDI
- Web Services Interoperability (WS-I)
- Java Web Services Developer Pack (Java WSDP)
Web Service Development
- Development Approaches
- Runtime Environments: Apache Axis2, Weblogic, and IBM WebSphere
- WS-I Compliance
- Creating a Web Service from a JavaBean
- Exposing a Stateless Session Bean as a Web Service
- Creating an Axis2 Web Service
- Generated Files
- Testing the Web Service
- Defining Deployment: webservices.xml, ibm-webservices-bnd.xmi and ibmwebservices-ext.xmi
- Editing WSDL
- Using the Web Services Explorer
SOAP
- SOAP Processing Model
- SOAP Messages
- SOAP Message Elements (Envelope, Header, Body and Fault)
- Communication Styles (Document Style & RPC Style)
- Encoding
- Java/SOAP Mappings
- SOAP Bindings
- Error Handling
- SOAP Implementations
TCP/IP Monitor
- Overview
- TCP/IP Monitor Configuration
- Controlling the Monitor
- Using the TCP/IP Monitor View
- Examining Requests and Responses
- Examining SOAP Messages
WSDL
- Overview
- Java/WSDL Mapping
- Abstract vs. Concrete Descriptions
- WSDL Document Structure
- WSDL Elements (Types, Ports, Services, Messages, Operations and Port Types)
- Bindings and Extensibility Elements
- WSDL Style/Use
- Service and Port Definitions
- Binding to a Service (Early vs. Late Binding)
UDDI
- Overview
- Registries
- UDDI Interactions
- UDDI Data Model
- UDDI4J
- UDDI Clients
Web Services Explorer
- Overview of the Publishing Process
- Web Services Explorer Functions
- Launching the Web Services Explorer
- Accessing a UDDI Registry
- Publishing a Business Entity, Business Service and Service Interface
- Locating Web Services
JAX-RPC
- Overview
- JAX-RPC Model
- Service Endpoint Definition
- Development Steps
- The Service Life Cycle Interface
- Service Deployment
- Java/XML Mappings
- Web Service Clients (Static Stub, Dynamic Proxy and Dynamic Invocation Interface)
- The javax.xml.rpc.Service Interface
- Handlers
- Data Type Mapping
- JAX-RPC Implementations
Web Services Client Development
- Web Service Client Wizard
- Generating a Proxy
- Client Types
- Generating Sample JSPs
- Testing the Proxy
- Generated Files
- Using the Generated Proxy
- Web Services Client Editor
Axis2
- History
- Engine
- Framework
- Handler Chains
- Services
- Deployment Options (JWS and WSDD)
- Mapping Tools (Java2WSDL and WSDL2Java)
- Generated Files
- Development Process
- Handlers
- Clients
- Custom Type Mapping
- TCP Monitor Tool (tcpmon)
Web Services for JEE
- JEE Architecture
- Port Definition
- Managing Ports
- Requirements for Exposing Session Beans and Java Classes
- Service Implementation Bean Lifecycle
- Container Responsibilities
- Web Services Deployment Descriptor (webservices.xml)
- JAX-RPC Mapping
- Client Development
- Client Deployment Descriptors
- Security
Application Assembly Overview
- Application Assembly and Packaging
- Deployment Descriptors
- Bindings
Web Services Security Concepts
- Web Service Security Risks
- Encryption and Decryption
- Cryptography
- Certificates
- Digital Signatures
- Security: Message Level vs. Transport Level
- SSL/TLS
- WS-Security
Defining Web Services Security
- App Server Security Model for Web Services
- WS-Security Authentication
- Enabling Authentication
- Message Integrity Using XML Signatures
- Configuring Integrity
- WS-Security Confidentiality
- Configuring Confidentiality
Deploying Web services in an Application Server
- Architecture
- Administrative Console
- Web Services Support
- Creating Required Resources
- Deploying a Web Service to an Application Server
- Managing Deployed Applications
SOAP Messages with Attachments
- The Need for SOAP Attachments
- Attachments vs. Encoding
- MIME defined
- MIME Header Fields
- Multipart/Related Content Type
- SOAP Message Package
- Referencing Attachments
- Related Java APIs
- JAX-RPC Mappings: MIME to Java
- WSDL MIME Binding
RESTful Web Services
- The Big picture
- RESTful Events and Event Handlers
- An Example RESTful Service
Appendix: XML Basics
- The History of XML
- XML Documents: Markup and Data
- XML Document Components and Structure
- XML Tags
- Well-Formed XML
- Elements and Attributes
- Names and Name Tokens
- Namespaces
- Entities and Escape Sequences
- CDATA Sections and Comments
Appendix: Namespaces
- The Need for Namespaces
- Declaring Namespaces
- Qualified Names
- Namespace Scoping
- Default Namespaces
Appendix: Validating XML With DTDs
- Approaches to Validation
- DOCTYPE Declaration
- Element Declarations and Element Content
- Modifiers
- Mixed Content
- Attribute Declarations
- Entities
- Notation Declarations
- Validating vs. Non-Validating Parsers
Appendix: Validating XML With XML Schemas
- XML Schema Structure
- Element Declarations
- Built-in Data Types
- Creating and Extending Types
- Defining Restrictions
- List Types and Union Types
- Anonymous Types
- Complex Types
- Occurrence Constraints
- Defining Attributes and Attribute Groups
- Global Elements & Attributes
- Declaring Mixed Content
What You Can Expect
At the end of this course, students will be able to:
- Develop Web Services using steps that include develop, secure, deploy, publish and consume simple and advanced Web services tools including AXIS2.
- Understand publishing and retrieving Web service definitions from a UDDI registry.
- Use the application development tools provided by Eclipse which automate Web service development.
Who Should Take This Course
Programmers, Analysts and Managers who are interested in the development and deployment of Web Services.
Recommended Prerequisites
Java or C# programming experience and familiarity with XML.
Training Style
Instructor led with 50% lecture and 50% lab.
« Hide The Details
Related Courses
Code |
Course Title |
Duration |
Level |
|
RESTJ |
RESTful Web Services Development with Java |
3 Days |
II |
Details |
WSCS |
Building Web Services Using Visual C# |
3 Days |
II |
Details |
JAVAWS |
Developing Java Web Services |
5 Days |
II |
Details |
WSDVJ |
Web Services Development in Java |
5 Days |
II |
Details |
SOAPWS |
Programming SOAP Web Services With JAX-WS |
5 Days |
II |
Details |
JAXIS |
AXIS2 - Java Web Services |
5 Days |
III |
Details |
Every student attending a Verhoef Training class will receive
a certificate good for $100 toward their next public class taken
within a year.
You can also buy "Verhoef Vouchers" to get a discounted rate for a
single student in any of our public or web-based classes.
Contact your account manager or our sales office for details.
|