Developing Web Services with WEBLOGIC Training

We offer private customized training for groups of 3 or more attendees.

Course Description

This one-week course prepares Java programmers to develop Web services and clients using the BEA WebLogic Platform(TM), in accordance with prevailing standards such as SOAP, WSDL, and JAX-RPC. Students get an overview of the interoperable and Java-specific Web services architectures, and then learn the standard (J2EE 1.4) APIs for SOAP messaging and WSDL-driven, component-based service development, working extensively with the BEA WebLogic Server to implement, deploy and test Web services. Both document-style and RPC-style messages and services are covered in depth. The first three chapters provide an overview of the world of Java-based Web services, along with an introduction to the tools available for Web-service development in WebLogic. In these early chapters, students build and run Web services that have already been developed, focusing not on coding but on runtime behavior, SOAP traffic, and WSDL definitions. That is, the early focus is on architecture: the roles that various protocols, APIs, tools, and application components play in a working Web service and/or client. Students then develop an understanding of the Simple Object Access Protocol (SOAP) 1.1, and skills in using the SOAP with Attachments API for Java (SAAJ) 1.1 to build SOAP-based Web services and clients. Students will learn to read SOAP and to write it by hand, and then will proceed to use SAAJ to develop services that respond to SOAP/HTTP messages. The course then turns to its main focus, which is the Java API for XML-Based RPC, or JAX-RPC. JAX-RPC abstracts almost all the details of SOAP messaging using WSDL as a description language for interface and implementation; this allows the Java developer to concentrate on application and service specifics. JAX-RPC specifies service development either from WSDL documents as a starting point or beginning with Java code and generating the WSDL for client use; this course addresses both possible development paths and analyzes their relative advantages. Students learn various intermediate and advanced JAX-RPC features under WebLogic in the final chapters of the course: developing services as EJBs; managing SOAP headers using JAX-RPC message handlers; creating and reading SOAP attachments; asynchronous SOAP messaging using JMS; and Web-service security.
Course Length: 5 Days
Course Tuition: $2090 (US)


Experience in Java Programming, including object-oriented Java and the Java streams model is essential. Some understanding of XML and XML Schema will be helpful, but is not strictly necessary.

Course Outline


The Web Services Architecture
Evolution of Web Services
Motivation for Web Services
Interoperability Stacks
The Wire Stack
Simple Object Access Protocol (SOAP)
The Description Stack
Web Service Description Language (WSDL)
The Discovery Stack
Universal Description, Discovery and Integration (UDDI)
Hosting Web Services: Scenarios
Observing SOAP Traffic

WebLogic and Web Services
The WebLogic Platform
Web Services Features and Support
BEA-Speak for Web Services
The WebLogic Workshop
Limitations of the Workshop
The WebLogic Server
Creating a Domain
Ant Tasks for Web Services
Development Process

WebLogic and Web Services
Java and Web Services
Web Services and the J2EE
WebLogic Support for Standard APIs
The Java API for XML Processing (JAXP)
The Java API for XML Binding (JAXB)
The SOAP With Attachments API for Java (SAAJ)
The Java API for XML Messaging (JAXM)
Low-Level Web Services in WebLogic (SAAJ)
The Java API for XML-Based RPC (JAX-RPC)
High-Level Web Services in WebLogic ( JAX-RPC)
WSDL-to-Java vs. Java-to-WSDL
The Java API for XML Registries (JAXR)
WebLogic UDDI

The Simple Object Access Protocol (SOAP)
SOAP Messaging Model
SOAP Namespaces
The SOAP Envelope
The Message Header
The Message Body
SOAP Faults
XML Schema
Validating Message Content
The SOAP Encoding
Avoiding Redundant Serialization

The Java APIs for SOAP Messaging (SAAJ)
The SAAJ Object Model
Parsing a SOAP Message
Reading Message Content
Bridges to JAXP
Working with Namespaces
Creating a Message
Setting Message Content
WebLogic SAAJ: Bugs and Limitations

SAAJ Web Services
JAXM vs. WebLogic JMS
Messaging Scenarios
Point-to-Point Messaging
SAAJ Services using JAX-RPC
Creating a JAXM Connection
Sending a Message

Web Services Description Language (WSDL)
Web Services as Component-Based Software
The Need for an IDL
Web Services Description Language
WSDL Description Model
The Abstract Model - Service Semantics
Message Description
Messaging Styles
The Concrete Model - Ports, Services, Locations
Extending WSDL - Bindings
SOAP Style and Use Attributes
Service Description

The Java API for XML-Based RPC (JAX-RPC)
The Java Web Services Architecture
Two Paths
How It Works - Build Time and Runtime
Mapping Between WSDL/XML and Java
Generating from WSDL
What Gets Generated
What the Application Sees
Generating from Java
Which Way to Go?
Passing Objects
Another CORBA?

Generating Web Services from Java Code
The Java-to-XML Mapping
Primitive Types and Standard Classes
Value Types and JavaBeans
The Java-to-WSDL Mapping
Service Endpoint Interface
Scope of Code Generation
Inheritance Support
WebLogic JAX-RPC: Bugs and Limitations
Multi-Tier Application Design
Analyzing the Domain
High-Level Ant Tasks
When Things Don't Fit
Extensible Type Mapping

Generating Java Web Services from WSDL
The XML-to-Java Mapping
Simple and Complex Types
WebLogic Extended Mappings
The WSDL-to-Java Mapping
Mapping Operation Inputs and Outputs
Building a Service Client
Locating a Service
Client-Side Validation
Interoperability under Java-to-WSDL
Creating a Web Service
Mid-Level Ant Tasks
XML and WSDL Design Guidelines
Deploying the Service
Interoperability under WSDL-to-Java
Controlling Names and URIs

Web Services and EJB
Enterprise JavaBeans
Three Tiers for J2EE
EJB 2.1 and JAX-RPC
Session Beans as Web Service Endpoints
How It Works - Build Time and Runtime
The Bean's Service Endpoint Interface
SOAP as an RMI Transport
Adding a SOAP Interface to a Session Bean
Generating From WSDL

Message Context and Message Handlers
Handling SOAP Headers
Servlet Endpoint Context
EJB Endpoint Context
Using SAAJ
JAX-RPC Message Handlers
Handler Chains
Processing Model and Patterns
The Ant Task

SOAP Attachments
WebLogic Support for Attachments
SAAJ Object Model, Revisited
The SOAPMessage Class
The Java Activation Framework
The MimeHeaders Class
The AttachmentPart Class
Adding SOAP Attachments
Identifying Attachments
Reading Attachments

Web Services and JMS
Asynchronous Messaging
The Java Message Service
Queues and Topics
Message Types
Message-Driven Beans
Asynchronous Web Services
Message Queues as Web Services
Ant Tasks and JMS Services

Web Services and Security
Technology and Techniques
Public Key Encryption
Digital Signature
J2EE Techniques
Securing Web-Service URIs
XML and SOAP Solutions
XML Encryption and Signature
WebLogic Support for WS-Security
Securing a Service?s Messages
Key Pairs and Keystores
Enhancing the Client


Course Directory [training on all levels]

Upcoming Classes
Gain insight and ideas from students with different perspectives and experiences.

Interesting Reads Take a class with us and receive a book of your choosing for 50% off MSRP.