|
Beginning Web Services for Java
I. Overview
a. Distributed Systems
i. CORBA
ii. DCOM
iii. RMI/EJB
b. Tightly-coupled vs. loosely coupled systems
c. Message-based systems (MOM)
d. Web Services
i. XML-RPC
ii. Based on XML, SOAP, UDDI and WSDL
iii. Standards-based
II. XML
a. Overview
i. HTML and SGML
ii. Content vs. Presentation
b. Basic XML
i. Elements and attributes
ii. DTD
c. Schemas
d. XSLT – compared with CSS
e. Xpath
f. XPointer
g. Namespaces
III. SOAP
a. Overview – enables access to services
b. Overview of HTTP
c. Structure of a SOAP Message
d. The SOAP Envelope
i. SOAP Header
ii. SOAP Body
e. SOAP Faults
f. RPC
g. Return values – accessors, values, struct and array
h. Invoking SOAP
i. How SOAP messages are processed
j. SOAP with Attachments
k. Current state of SOAP – W3C, version
IV. UDDI/WSDL
a. WSDL
i. Overview – enables description of services
ii. What is a service?
1. Port and port type
2. operation
3. Messages
iii. Interfaces
iv. Binding an interface to a protocol
v. Single vs. multiple message exchanges
vi. Actors and message paths
b. UDDI
i. Overview – enabling discovery of services
ii. UDDI registry holds:
1. White pages – organized by name
2. Yellow pages – organized by category
3. Green pages – contains descriptions of services
iii. tModel – contains metadata about the service
iv. Public UDDI registries
1. Manual registration
2. Programmatic registration
V. Wrapup
a. Current state of standards
b. Outstanding issues
i. Security
1. Authorization
2. Authentication
3. Encryption
ii. Transactions
VI. Java APIs for SOAP
a. JWSDP 1.1
i. JAXP
ii. JAXB
iii. JAX-RPC
iv. JAXM and SAAJ
v. Apache Tomcat and Ant
VII. JAXP
a. Simple API for XML (SAX)
i. Event-based model
ii. Namesspaces and Schemas
b. Document Object Model (DOM)
i. Tree-based model
ii. Nodes, values and attributes
iii. Modifying the DOM
iv. Converting DOM to XML
VIII. JAX-RPC
a. Client models
i. Stub-based
ii. Dynamic Proxy
iii. Dynamic Invocation
b. SOAP Service
i. Interface and Implementation classes
ii. Generation of server tie classes and deployment
c. Java/XML data mapping, arrays and complex types
IX. JAXM
a. Interaction patterns
i. Asynchronous inquiry/inquiry-response
ii. Synchronous inquiry/update
iii. Fire and forget
b. Connections
c. Profiles
d. Providers
e. Deployment
f. Attachments to JAXM messages using SAAJ
g. Relationship with J2EE
h. Servlets, JSPs and message beans
X. JAXB
a. XML Schemas examined
b. Binding declarations, default and custom
c. Binding compiler – generating classes
d. Marshalling and unmarshalling Java objects from XML files
e. Validation
XI.
Java APIs for Service Publishing and Discovery
a.
JWSDP 1.1
i.
JAXR
ii.
Apache Tomcat and Ant
b.
WSDL
c.
UDDI
i.
White pages – organized by name
ii.
Yellow pages – organized by category
iii.
Green pages – contains descriptions of services
XII. JAXR
Architecture
a.
Roles
i.
Registry Provider
ii.
JAXR Provider
iii.
JAXR Client
b.
Capabilities and Capability Profiles
XIII. JAXR
Programming Model
a.
javax.xml.registry
b.
javax.xml.registry.infomodel
XIV. The
JAXR Information Model
a.
Relationship to ebXML and UDDI
b.
The RegistryObject and Organization
interfaces
c.
Classification of Registry Objects – the Classification
interface
d.
Association of Registry Objects – the Association
interface
XV. Connection
Management
a.
The Connection interface – between a JAXR client and
JAXR provider
i.
Synchronous
ii.
Asynchronous
b.
Security Credentials
XVI. Life-Cycle
Management
a.
Creation, modification and deletion of registry objects
b.
The JWSDP Registry Server
XVII. Appendix
Ant
Dependencies
Targets
Built-in tasks
|