Web Services Development Using RAD7.0 (CDT1562) 4 days

yompmulligrubsInternet and Web Development

Oct 31, 2013 (3 years and 11 months ago)

74 views



NEW COURSE



Web Services Development Using
RAD
7.0

(C
DT1562
)

4 days


800/938
-
1222

Caliber Data Training

www.caliberdt.com


1

This course will you teach you how to develop Web Service provider and consumer for the WebSphere
Application Server v6.1 platform. It will also teach you the technologies that form the foundation of Web
Service, such as XML schema, WSDL and SOAP. Java spe
cifications for Web Services development (JSR
101 and 109) are covered. All the labs are done using RAD v7.0.

Course Topics:



XML schema design



SOAP



WSDL



JAX/RPC



JSR 109



UDDI



WS
-
Security



Interoperability issues



Deployment in WebSphere

After compl
eting this course, the student should 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 RAD v7.0.



Write a Web Services client using s
tandard Java specifications.



Register a service in a public or private UDDI registry.



Secure web services.



Learn the interoperability issues especially with the .NET platform.

Audience:

J2EE developers who
need
to learn about how to build a Web Service
s based solution. This
class covers many advanced topics that will help them build a solution appropriate for a large business.


Prerequisites
:

Java programming and b
eginner level knowledge of J2EE and XML.


Duration
:
4 days




NEW COURSE



Web Services Development Using
RAD
7.0

(C
DT1562
)

4 days


800/938
-
1222

Caliber Data Training

www.caliberdt.com


2

Course Outline:

1. Introdu
ction to Rational Application Developer



Objectives



The RAD 7 Product



Eclipse Platform



The WebSphere Studio Product Family



Rational Web Developer



Rational Application Developer



Key Features in RAD v6.0



New Features in RAD v7.0



WebSphere Studio Application D
eveloper 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 Proble
ms 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



Extract
ing Code to a Method



Pull
-
up Method



Migrating Workspace from RAD v6



Project Interchange Feature



Migrating J2EE Applications



J2EE Migration Wizard



Summary






NEW COURSE



Web Services Development Using
RAD
7.0

(C
DT1562
)

4 days


800/938
-
1222

Caliber Data Training

www.caliberdt.com


3

2. Introduction to J2EE and the WebSphere Platform



Objectives



Java Web Applications



Java Web Applic
ation 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 WebS
phere Platform



Rational Application Developer (RAD)



Background of RAD



WebSphere Application Server



What s New in WebSphere Application Server v6.0



What s New in WebSphere Application Server v6.1



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



Administration Changes from v6



RAD J2EE Development



RAD Proje
ct Structure



Summary

3. Introduction to Web Services



Objectives



A Conceptual Look at Services



Defining Services



SOA Runtime Implementation



SOA Runtime Implementation



What is a Web Service?



Enterprise Assets as Services



NEW COURSE



Web Services Development Using
RAD
7.0

(C
DT1562
)

4 days


800/938
-
1222

Caliber Data Training

www.caliberdt.com


4



Typical Development Workflow



Advantag
es of Web Services



Web Service Business Models



Case Study: Internal System Integration



Case Study: Business Process Externalization



SOAP Overview



SOAP in Protocol Stack



SOAP Structure



SOAP Message Architecture



Applying SOAP



WSDL Overview



WSDL Structure



App
lying WSDL



UDDI Overview



UDDI Terminology



UDDI Structure



Locating a Service



Applying UDDI



WS
-
I Overview



WS
-
I Deliverables



Summary

4. XML Programming



Objectives



XML Overview



Data and Document Structure



An Employee Document



Tags



First XML Document



Markup Lan
guages



What is XML ?



Why XML?



An Example of XML Document



Well
-
Formed v. 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



NEW COURSE



Web Services Development Using
RAD
7.0

(C
DT1562
)

4 days


800/938
-
1222

Caliber Data Training

www.caliberdt.com


5



Namespaces



Usi
ng 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



Persisting XML



Summary

5. XML Sch
ema Basics



Objectives



What is an XML Schema?



Role of XML Schema in SOA



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 an XML Document



Validating the XML Against the Schema



Summary

6. Web services Description Language (WSDL)



Objectives



WSDL Overview



WSDL Document Tags



WSDL Namespaces



Sample WSDL Document Structure



<definitions>



<impo
rt>



<types>



<message>



<portType>



NEW COURSE



Web Services Development Using
RAD
7.0

(C
DT1562
)

4 days


800/938
-
1222

Caliber Data Training

www.caliberdt.com


6



<operation>



One
-
way <operation>



Request
-
Response <operation>



Solicit
-
Response <operation>



Notification <operation>



Modeling Simple Operation



Modeling Complex Operation



Modeling Complex Message



<binding>



More on <binding>



<b
inding> Syntax



SOAP Binding Example



<service> and <port>



More on <port>



WSDL SOAP Binding Extensions



soap:binding



soap:operation



RPC or Document Style?



WSDL API for Java



Summary

7. Simple Object Access Protocol (SOAP)



Objectives



SOAP Overview



SOAP in Proto
col Stack



SOAP Components



SOAP HTTP Request Example



SOAP HTTP Response Example



Message Envelope



The Header Element



Header Attributes



SOAP Body



SOAP Fault



Communication Style



RPC/Encoded Style



RPC/Literal Style



Enabling RPC Styles



Document/Literal Style



Doc
ument/Literal Wrapped Style



Details of the Wrapped Style



Enabling Document Literal Style



NEW COURSE



Web Services Development Using
RAD
7.0

(C
DT1562
)

4 days


800/938
-
1222

Caliber Data Training

www.caliberdt.com


7



Summary




8. 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 T
ypes



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 In
terface (DII)



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: Exam
ple



Schema Mapping Restrictions



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

9. Web Services for J2EE



Objectives



NEW COURSE



Web Services Development Using
RAD
7.0

(C
DT1562
)

4 days


800/938
-
1222

Caliber Data Training

www.caliberdt.com


8



Introduction



JSR
-
109: Motivation



When Do You 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



L
ifecycle 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

10. WebSphere V6.1 Support for Web Services



Overvi
ew



Introduction



Web Service Runtimes



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 WSD
L Editor



Service in an EJB Container



Generated Artifacts



Web Services Deployment Descriptor



Client Development



Generated Artifacts



The Service Reference



The Proxy Class



NEW COURSE



Web Services Development Using
RAD
7.0

(C
DT1562
)

4 days


800/938
-
1222

Caliber Data Training

www.caliberdt.com


9



Summary

11. Error Handling



Overview



Introduction



Fault



Designing Faults



System Problems



Business Rule Violation



Summary

12. Web Services Security



Objectives



Traditional systems



Loosely
-
coupled systems



Risks of loosely
-
coupled services



SOA Security Concerns



Security Stack: Web services



Security Stack: Other services



Overview of WS
-
Security



Pu
blic Key Infrastructure (PKI)



Digital Signature



Digital Signature Process



Certificates



Authentication



Basic HTTP Authentication



Secure Socket Layer (SSL)



Basic Authentication Over HTTPS



Securing non
-
HTTP Traffic



WebSphere and Web Services Security



SOAP Mes
sage Security



Message Integrity



Message Confidentiality



Symmetric Encryption Example



Configuring Security in WebSphere



Configuring a Server Module



Configuring a Client Module



Summary



NEW COURSE



Web Services Development Using
RAD
7.0

(C
DT1562
)

4 days


800/938
-
1222

Caliber Data Training

www.caliberdt.com


10


13. Introduction to UDDI



Objectives



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

14. Web Services Interoperability (WS
-
I)



Overview



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.1 Support



.NET Interoperability



Summary

15. Introduction to Service Oriented Analysis & Desig
n (SOAD)



Objectives



Introduction to SOAD



Applying OOAD Principles



Abstraction



Abstraction in SOAD



Encapsulation



Encapsulation in SOAD



Modularity



Modularity in SOAD



NEW COURSE



Web Services Development Using
RAD
7.0

(C
DT1562
)

4 days


800/938
-
1222

Caliber Data Training

www.caliberdt.com


11



Hierarchy



Hierarchy in SOAD



Why OOAD Is Not Enough



Granularity



The Need for Loose Coupling



T
he SOAD Methodology



The SOAD Methodology Steps



Stage 1: Requirements Gathering & Process Modeling



Stage 2: Service Identification



Stage 3: Service Implementation



Stage 4: Process Implementation



SOAD Stages and SOA Lifecycle



Summary

16. Service Modeling and

Implementation Techniques



Objectives



Introduction



How Is a Service Developed?



The Service Model



Developing a service model



Service Model Example #1



Service Model Example #2



Service Model Example #3



Service model granularity



Service Contract Template



Servi
ce Contract Template Part 2



Service Contract Template Part 3



Top Down Development



Web Service Implementation Choices



Apply OOAD in New Service Development



Bottom
-
Up Development



Bottom
-
Up Technology Choices



Example: JCA
-
Based Service



Example: JAX
-
RPC Servic
e



Top
-
down or Bottom
-
up?



Data Mapping



Interface Mapping



Best Practices



Summary






NEW COURSE



Web Services Development Using
RAD
7.0

(C
DT1562
)

4 days


800/938
-
1222

Caliber Data Training

www.caliberdt.com


12

17. Best Practices



Overview



Architecture Best Practices



Data Format Best Practices



Security Best Practices



Programming Model Best Practices



Summary


w/f8