If you are a J2EE developer, you can gain complete mastery over Web Services development in the IBM WebSphere platform after taking this course. This course will teach the theory behind XML schema, WSDL and SOAP. It will proceed to teach various Java specifications that cover Web Services development (JSR 101 and 109). All the labs are completed using RAD V6.
This course is designed for J2EE developers who need to learn how to build a Web Services based solution. This class covers many advanced topics that will help build a solution appropriate for a large business.
Upon completion of this course, the participant will be able to:>Confidently design XML schema and WSDL>Tell the difference between different SOAP styles (document literal, RPC literal etc.) >Implement a Web Service using RAD6>Write a Web Services client using standard Java specifications>Register a service in a public or private UDDI registry>Secure web services>Learn the interoperability issues especially with the .NET platform
Introduction to Rational Application DeveloperObjectives The WebSphere Family Eclipse Platform The WebSphere Studio Product Family Rational Web Developer Rational Application Developer Key Features in RAD v6.0 WebSphere Studio Application Developer Integration Edition WebSphere Studio Enterprise Developer Views, Perspective and Editor Areas Basic Operations with RAD Views and Perspectives The Java Perspective The Debug Perspective Navigator View Package Explorer Outline View Task and Problems View Build and Validation Import and Export Project Templates and Code Completion Searching Setup Compiler Class Path JRE Switching Refactoring Changing Class Name Changing Method Name Changing Variable Name Moving a Class to a Different Package Extracting Code to a Method Pull-up Method Migrating Workspace from WSAD v5.x Project Interchange Feature Migrating J2EE Applications J2EE Migration Wizard Summary Introduction to J2EE and the WebSphere PlatformObjectives Java Web Applications Java Web Application Architecture J2EE Architecture J2EE Software Packaging J2EE Module Structure Enterprise Archive (EAR) Web Modules and WAR EJB Modules Web Application Programming Model – MVC An MVC Example The Infrastructure for Enterprise Web Applications The IBM WebSphere Platform Rational Web Developer Rational Application Developer (RAD) Background of RAD WebSphere Application Server What’s new in WebSphere Application Server v6.0 WebSphere Editions Services provided by WebSphere Application Server WebSphere Application Server Architecture WebSphere Administrative Topology WebSphere Application Server Components Server Profile WAS Administration tools Administration Changes from v5 RAD J2EE Development RAD Project Structure Summary Introduction to Web ServicesObjectives Service Oriented Architecture (SOA) Basic SOA SOA – Runtime Implementation SOA Web Services Typical Development Workflow Advantages of Web Services Web Services Business Models Case Study: Internal System Integration Case Study: Business Process Externalization SOAP UDDI Web Services Description Language(WSDL) Web Services Invocation Framework(WSIF) WSIF and WSDL Web Services Interoperability(WS-I) WS-I Deliverables WS-I Support in RAD6 WS-I Compliance in RAD 6 WS-I Compliance at Project Level Web Services Support in RAD Summary XML ProgrammingObjectives XML Overview Data and Document Structure An Employee Document Tags First XML Markup Languages What is XML? Why XML? An Example of XML Document Well-formed vs. Valid XML Document Enforcing Validity: DTDs Presentation Style Sections of an XML Document XML Elements Nesting and Hierarchy of XML Elements Tag Attributes Naming Rules Namespaces Using Namespaces Java API for XML The XML Example Example SAX Handler Example: Begin Parsing Once Again With Namespace Using DOM to Parse With Namespace Enabled Example: Build DOM Document Example: Save DOM Document in a File Summary XML Schema BasicsObjectives What is XML Schema? Creating a Schema File Defining a Simple Element Defining a Complex Element Defining Element Attributes Referring to an Element From Another Element Defining Abstract Data Types Adding Restrictions Referring to a Schema from a XML Document Summary Web Services Description Language (WSDL)Objectives WSDL Overview WSDL Document Tags WSDL Namespaces Sample WSDL Document Structure One-way Request-Response Solicit-Response Notification Modeling Simple Operation Modeling Complex Operation Modeling Complex Message More on Syntax SOAP Binding Example and More on WSDL SOAP Binding Extensions soap:binding soap:operation RPC or Document Style? WSDL API for Java Summary Simple Object Access Protocol (SOAP)Objectives SOAP Overview SOAP In Protocol Stack SOAP Components Message Envelope Message Envelope - Headers SOAP HTTP Request Example SOAP HTTP Response Example Header Attributes SOAP Body SOAP Fault Communication Style RPC/Encoded Style RPC/Literal Style Document/Literal Style Document/Literal Wrapped Style Details of the Wrapped Style Summary JAX-RPC (JSR 101)Objectives JAX-RPC Overview JAX-RPC Framework Java to XML Data Conversion Main Goals of JAX-RPC Supported Protocols JAX-RPC Supported Types JAX-RPC Server Server Side Artifacts Generating Server Artifacts JAX-RPC and WS-I JAX-RPC Clients JAX-RPC Client Model JAX-RPC Client - Static Stub Generating Client Side Code Client Programming Model JAX-RPC Client – Dynamic Proxy Dynamic Invocation Interface JAX-RPC Type Mapping 1. Mapping XML Types to Java Types – Simple Types 1. Mapping XML Types to Java Types – Complex Types Complex Type Mapping - Example 1. Mapping XML Types to Java Types – Arrays Mapping Arrays - Example 2. Mapping abstract WSDL definitions to Java Mapping concrete WSDL types to Java types 3. Mapping Concrete WSDL Types to Java Types 3. Mapping Concrete WSDL Types to Java Types Java to WSDL/XML Mapping Mapping Tools Summary Web Services for J2EEObjectives Introduction JSR-109 - Motivation When to Use JSR 109? JSR-109 Roles The Server Programming Model The Service Endpoint Interface Web Module Service Accessing the Service The Mapping File Implementation Class Details Lifecycle Callback EJB Module Service The Client Programming Model Developing a Client The Service Interface Writing a Client Handlers Handlers – Example(Server-Side) Handlers – Example(Client-Side) Summary WebSphere v6 Support for Web ServicesIntroduction Service in a Web Container Example Java Class Generated Artifacts How Does the Wizard Generate All That? Web Services Deployment Descriptor Example: webservices.xml webservices.xml Editor The Generated WSDL File The WSDL Editor Service in a EJB Container Generated Artifacts Web Services Deployment Descriptor Client Development Generated Artifacts The Service Reference The Proxy Class Introduction to UDDIObjectives UDDI Overview UDDI in Web Services Architecture UDDI Businesses and Services in UDDI Static and Dynamic Web Services UDDI Registry Structure UDDI Registry Structure -tModel UDDI Registry Structure UDDI Interactions UDDI in WebSphere Summary Error HandlingIntroduction Fault Designing Faults System Problems Business Rule Violation Web Services SecurityThe Challenges Public Key Infrastructure (PKI) Digital Signature Certificates Overview of Web Services Security WebSphere and Web Services Security SOAP Message Security Message Integrity Message Confidentiality Authentication Transport Level Security Configuring Security in WebSphere Configuring a Server Module Configuring a Client Module Web Services Interoperability (WS-I)Introduction Goal What Comes out of WS-I? Profiles Basic Profile 1.1 Highlights Simple SOAP Binding Profile 1.0 Highlights Basic Security Profile 1.0 WebSphere v6 Support .NET Interoperability Service Oriented Analysis & Design (SOAD) IntroductionObjectives Introduction to SOAD Applying OOAD Principles Abstraction Abstraction in SOAD Encapsulation Encapsulation in SOAD Modularity Modularity in SOAD Hierarchy Hierarchy in SOAD Why OOAD is not Enough Granularity The Need for Loose Coupling The SOAD Methodology The SOAD Methodology Steps Stage 1 - Process Modeling Business Process Document - for the User Placing an Order Example: The Business Process Diagram Example: The Resulting BPEL Document Stage 2 – Service Identification Example: Service Identification Stage 3 – Service Design & Implementation Stage 4 - Process Implementation Summary Best PracticesArchitecture Best Practices Data Format Best Practices Security Best Practices Programming Model Best Practices
“The course was very in depth with Tools, personal experience, and material to assist me in becoming a better Business Analyst/Project Manager/Programmer Analyst.” Student – Requirements Gathering & Writing