Download CrossWorlds Software

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

URL redirection wikipedia , lookup

Transcript
Web Service Development for IBM WebSphere
Application Server V7
WD506 (classroom)
VD506 (online)
Course Abstract
Course description
This 5-day instructor-led course teaches students how to develop, debug, test, and monitor Web services for Java Platform,
Enterprise Edition version 5 (Java EE 5) using IBM WebSphere Application Server V7.
Java EE 5 represents a significant evolution in the Java enterprise programming model by providing application developers
with considerable improvements that enhance the development experience and, in turn, productivity. The Java API for XMLBased Web Services (JAX-WS) and Java Architecture for XML Binding (JAXB) specifications in Java EE 5 provide a
simplified approach to Web service development. IBM WebSphere Application Server V7 provides a standards-compliant
runtime environment for Java EE 5 Web services.
In this course, students learn about the role of Web services in service-oriented architectures (SOA) and the enterprise, in
addition to the technologies that are typically used in Web services. Students start by learning about the components of Web
Services Description Language (WSDL) documents and SOAP messages in Web services. Students then learn how to use IBM
Rational Application Developer V7.5 to create Web services using the Web service wizards, how to debug and monitor Web
services using the TCP/IP monitor, and how to configure policies for Web service management. The course also covers how to
package and deploy Java EE 5 Web services to IBM WebSphere Application Server V7, how to work with attachments in Web
services, and how to create asynchronous Web services.
In addition, this course teaches students about the qualities of service for Web services. For example, students learn how to use
the Web Services Interoperability (WS-I) features to develop Web services that are interoperable with other platforms such as
Microsoft .NET. Students also learn about Web service caching for performance optimization and the WebSphere Application
Server Web service security model.
Throughout the course, students perform hands-on exercises that build their practical knowledge working with Rational
Application Developer V7.5 and WebSphere Application Server V7 to build, deploy, debug, and monitor Web services. Skills
covered in the exercises include generating Web services from existing JavaBeans, creating and managing Web service clients,
implementing security, and enhancing performance through caching, These hands-on exercises enable students to use a
powerful, integrated Web service development environment within Rational Application Developer V7.5 so they can build
enterprise-strength service-oriented architectures within the enterprise.
For information on other related WebSphere courses, visit the WebSphere Education Training Paths Web site:
http://www.ibm.com/software/websphere/education/paths/
General information
Delivery method:
Classroom or instructor-led online (ILO)
Audience:
This course is designed for application developers who will implement Java EE 5 Web services and
Web service clients.
Learning objectives:
After completing this course, students should be able to:
 Build JEE Web services based on the JAX-WS programming model
 Develop Web services using the IBM Rational Application Developer for WebSphere Software
V7.5 integrated development environment
 Generate Web service and Web service client artifacts using their respective wizards
 Debug and monitor Web services using the TCP/IP monitor
IBM WebSphere Education
http://www.ibm.com/websphere/education
Contact us at: [email protected]



Configure and develop message handlers
Configure policy sets to secure Web service deployments
Validate Web services against the WS-I Basic Profile to ensure interoperability with other Web
service runtime environments
Prerequisites:
Before taking this course, students should have practical knowledge of the Java EE 5 programming
model. A general understanding of service-oriented architecture and Extensible Markup Language
(XML) technologies is also highly recommended.
Duration:
5 days
Skill level:
Intermediate
Notes
The unit and exercise durations listed below are estimates, and may not reflect every class experience. If the course is
customized or abbreviated, the duration of unchanged units will probably increase.
This course is an update of the following previous course:
 WD505/VD505 – Web Services Development for WebSphere Application Server V6.1 with IBM RAD V7
Course agenda
Course introduction
Duration: 30 minutes
Unit 1. Introduction to Web services
Duration: 1 hour
Learning objectives:
After completing this unit, students should be able to:
 Describe the relationship between service-oriented architecture and Web services
 Identify the core standards that define Web services
 Describe real-world scenarios involving Web services
Unit 2. IBM WebSphere Application Server V7 Web services features
Duration: 30 minutes
Learning objectives:
After completing this unit, students should be able to:
 Describe the Web services support provided in IBM WebSphere Application Server
V7
 Describe the differences between the capabilities of the JAX-WS and the JAX-RPC
programming model for Web services
 Explain the role of the Web 2.0 feature pack in providing support for RESTful Web
services
Unit 3. Service creation scenario for enabling assets
Duration: 30 minutes
Learning objectives:
After completing this unit, students should be able to:
 Identify the categories of Java EE components that can be enabled as Web services
 Explain the role of Web service generation tools provided by the JAX-WS runtime in
IBM WebSphere Application Server V7
IBM WebSphere Education
http://www.ibm.com/websphere/education
Contact us at: [email protected]
Unit 4. Core Web service specifications: SOAP and WSDL
Duration: 1 hour 30 minutes
Learning objectives:
After completing this unit, students should be able to:
 Describe the need for a platform-independent service contract (WSDL)
 Describe the need for a platform-independent messaging format (SOAP)
Unit 5. Developing Java EE 5 Web service applications
Duration: 30 minutes
Learning objectives:
After completing this unit, students should be able to:
 Describe the purpose of the Enterprise Java programming model for Web services
(JAX-WS)
 Explain the steps required to generate a Web service from existing Java EE 5 assets
Exercise 1. Creating a Web service from an existing JavaBean
Duration: 1 hour
Learning objectives:
After completing this exercise, students should be able to:
 Describe the requirements of the JavaBean classes for Web service generation
 Describe the parameters of the @WebService annotation
 Correlate the portions within the generated WSDL document with the service endpoint
interface
 Test and monitor a Web service using the Web services explorer
 Identify the parts of the SOAP Web service message
Unit 6. Customizing Web service generation
Duration: 30 minutes
Learning objectives:
After completing this unit, students should be able to:
 Override the generated namespace name
 Specify the service port address
 Hide specific operations from a Web service interface
 Rename parameters
Exercise 2. Customizing the generated Web service through annotations
Duration: 45 minutes
Learning objectives:
After completing this exercise, students should be able to:
 Customize namespace names to hide package names using the @WebService
annotation
 Override service port addresses using the @WebService annotation
 Hide specific operations with the @WebMethod annotation
 Rename parameters with the @WebParam annotation
Unit 7. Developing JAX-WS clients for Web services
Duration: 1 hour
Learning objectives:
After completing this unit, students should be able to:
 Describe the differences between the capabilities of the JAX-WS Dispatch client and
IBM WebSphere Education
http://www.ibm.com/websphere/education
Contact us at: [email protected]
dynamic proxy client APIs
 Describe the requirements for developing a JAX-WS Web service client on a Java EE
platform, that is, managed clients
 Describe the requirements for developing a JAX-WS Web service client on a
standalone Java SE 5 platform, that is, unmanaged clients
Exercise 3. Creating a managed Web service client
Duration: 45 minutes
Learning objectives:
After completing this exercise, students should be able to:
 Generate Web service client artifacts based on an existing WSDL document
 Identify and explain the generated client artifacts for the WebSphere JAX-WS Web
service runtime
 Access a Web service through the JAX-WS Web service client from an existing
dynamic Web application
 Use the sample test JSP pages to verify the operation of a JAX-WS Web service
Exercise 4. Building and testing an unmanaged Web service client
Duration: 30 minutes
Learning objectives:
After completing this exercise, students should be able to:
 Package the Thin client for JAX-WS for WebSphere Application Server V7
 Test the unmanaged client through the IBM Rational Application Developer V7.5
launcher
Unit 8. Designing a service interface using a WSDL document
Duration: 45 minutes
Learning objectives:
After completing this unit, students should be able to:
 Design a Web service interface using the WSDL editor in IBM Rational Application
Developer for WebSphere Software V7.5
Exercise 5. Creating a WSDL document using IBM Rational Application Developer V7.5
Duration: 45 minutes
Learning objectives:
After completing this exercise, students should be able to:
 Create an XML Schema document for a WSDL document using the XML schema
editor
 Create a WSDL document using the WSDL editor
 Validate the WSDL file within the workbench
 Generate Web service artifacts from the created WSDL file using the Web service
wizard
Exercise 6. Developing an EJB Web service starting from WSDL
Duration: 45 minutes
Learning objectives:
After completing this exercise, students should be able to:
 Generate an Enterprise JavaBean Web service skeleton from a WSDL document
 Route HTTP Web service calls through a dynamic Web project using the endpoint
enabler tool
 Override URL mapping for the Web service HTTP endpoint through the Web
IBM WebSphere Education
http://www.ibm.com/websphere/education
Contact us at: [email protected]
deployment descriptor
Unit 9. Creating data bindings between XML and Java data types
Duration: 45 minutes
Learning objectives:
After completing this unit, students should be able to:
 Identify the role of JAXB as a high-level abstract API for binding XML schema types
to Java data types
 Describe the schema validation features provided by the JAXB programming model
 Describe the programmatic steps needed to unmarshal an XML document
 Describe the programmatic steps needed to marshal JAXB data types to an XML
document
 Identify use cases for customizing the binding between Java data types and XML
schema types:
 Creating API documentation for schema-derived JAXB packages, classes, methods,
and constants
 Providing more meaningful customized names over the default XML name-to-Java
identifier mapping
 Overriding default bindings
Exercise 7. Examining the XML schema to JAXB data type mapping
Duration: 1 hour
Learning objectives:
After completing this exercise, students should be able to:
 Generate JAXB data types based on an annotated XML schema document
 Marshal Java data types for an XML
 Unmarshal XML schema types to Java data types
 Customize the binding of XML schema components using the xs:annotation
element
Unit 10. Sending and receiving binary attachments using MTOM
Duration: 45 minutes
Learning objectives:
After completing this unit, students should be able to:
 Compare and contrast Message Transmission Optimization Mechanism (MTOM)
versus SOAP with attachments (SwA)
 Create a WSDL document with support for binary types
 Annotate a service implementation class with support for binary parameters
Exercise 8. Sending and receiving binary attachments using MTOM
Duration: 1 hour
Learning objectives:
After completing this exercise, students should be able to:
 Design a WSDL document with binary data message parts
 Annotate a Java interface with support for binary data
 Test and monitor SOAP messages with binary attachments using MTOM
 Test and monitor SOAP messages using base64 encoding as a fallback method for nonMTOM platforms
IBM WebSphere Education
http://www.ibm.com/websphere/education
Contact us at: [email protected]
Unit 11. Extending message processing capabilities with JAX-WS message handlers
Duration: 45 minutes
Learning objectives:
After completing this unit, students should be able to:
 Describe the difference between logical and protocol handlers
 Configure handlers using the @HandlerChain annotation
 Access message header and body content through the MessageContext object
Exercise 9. Intercepting and inspecting messages using message handlers
Duration: 1 hour
Learning objectives:
After completing this exercise, students should be able to:
 Develop logical message handlers to monitor the message payload within Web service
operations
 Develop and publish protocol handlers to inject information into SOAP message
headers
 Configure handlers to specific Web services using the @HandlerChain annotation
Unit 12. Creating asynchronous Web services and Web service clients
Duration: 45 minutes
Learning objectives:
After completing this unit, students should be able to:
 Describe the difference between the two invocation models: polling and callback
 Design a WSDL document in support of asynchronous Web services
 Annotate a service endpoint interface to support synchronous, polling, and callback
models of invocation
 Use the javax.xml.ws.Response object to handle the Web service response
from the polling model
 Implement a callback handler to handle future events
 Enable asynchronous message exchange pattern (MEP) at the HTTP connection level
Exercise 10. Creating asynchronous Web services and Web service clients
Duration: 1 hour
Learning objectives:
After completing this exercise, students should be able to:
 Examine the WSDL document of a Web service interface that supports asynchronous
operation invocation
 Develop a Web service for asynchronous Web service operations through polling and
callback invocation modes
 Implement a callback handler to handle future events
 Enable asynchronous message exchange pattern (MEP) at the HTTP connection level
Unit 13. Using SOAP over JMS as a transport for Web services
Duration: 45 minutes
Learning objectives:
After completing this unit, students should be able to:
 Describe the advantages and disadvantages of using SOAP over JMS
 Use the endpoint enabler tool to use the SOAP over JMS transport option
 Configure a permanent reply queue for SOAP over JMS calls
 Invoke Web service requests transactionally using SOAP over JMS
IBM WebSphere Education
http://www.ibm.com/websphere/education
Contact us at: [email protected]
Exercise 11. Creating Web services for SOAP over JMS
Duration: 1 hour
Learning objectives:
After completing this exercise, students should be able to:
 Use the endpoint enabler tool to use the SOAP over JMS transport option
 Configure a permanent reply queue for SOAP over JMS calls
 Invoke Web service requests transactionally using SOAP over JMS
Unit 14. Introduction to the enterprise service bus pattern
Duration: 30 minutes
Learning objectives:
After completing this unit, students should be able to:
 Explain the enterprise service bus (ESB) runtime pattern for e-business
 Explain the relevance of an ESB to Web service architects and developers
 Explain the role of an ESB in a Web service architecture
 Describe the capabilities of an ESB
 Describe the benefits of using an ESB
 Describe WebSphere offerings that support the ESB pattern
Unit 15. Defining policy sets and quality of service
Duration: 1 hour 30 minutes
Learning objectives:
After completing this unit, students should be able to:
 Describe the purpose and scope of the WS-Policy and WS-PolicyAttachment
specifications as a language for stating the requirements, preferences, and capabilities
of service requesters and providers
 Describe the purpose and scope of the WS-Coordination, WS-AtomicTransaction, and
WS-BusinessActivity specifications in managing units of work across distributed
applications
 Describe the purpose and scope of WS-Addressing in providing transport-independent
ways of specifying endpoint information
 Describe the purpose and scope of the WS-ResourceFramework specification in
maintaining state information across Web service invocations
Unit 16. Securing Web service applications
Duration: 1 hour
Learning objectives:
After completing this unit, students should be able to:
 Secure Web service applications at the HTTP transport protocol
 Authenticate Web service clients using HTTP basic authentication
 Describe the scope and purpose of the WS-Security standard
 Secure Web service applications using message-level security
 Authenticate Web service clients using security tokens
 Identify the Web service security API and SPI for supporting additional security tokens
and formats
Exercise 12. Securing the Web service application
Duration: 1 hour 30 minutes
Learning objectives:
After completing this exercise, students should be able to:
 Configure an inbound and outbound SSL connection to secure Web service messaging
 Authenticate Web service clients using HTTP basic authentication
IBM WebSphere Education
http://www.ibm.com/websphere/education
Contact us at: [email protected]
 Configure message level security through the Web Services Security support by using
policy sets
 Configure authentication through binary security tokens sent according to the WSSecurity specification
Unit 17. Validating Web service compliance with the WS-I Basic Profile
Duration: 45 minutes
Learning objectives:
After completing this unit, students should be able to:
 Explain the need for a Web services interoperability organization
 Describe the role of, and deliverables available from, the WS-I organization
 Describe the main recommendations from the WS-I Basic Profile 1.1, WS-I Basic
Security Profile
 Configure WS-I Basic Profile compliance in IBM Rational Application Developer
V7.5
Exercise 13. Demonstrating Web service interoperability
Duration: 30 minutes
Learning objectives:
After completing this exercise, students should be able to:
 Configure the WS-I Basic profile compliance levels in IBM Rational Application
Developer V7.5
 Validate SOAP messages using the TCP/IP monitor
 Validate WSDL documents for WS-I compliance
Unit 18. Organizing Web services using a service registry
Duration: 1 hour
Learning objectives:
After completing this unit, students should be able to:
 Explain the role of a service registry within a service-oriented architecture
 Describe the purpose and scope of Universal Description, Discovery and Invocation
(UDDI)
 Explain the limitations of a UDDI service registry
 Identify the advantages of implementing the IBM WebSphere Service Registry and
Repository (WSRR) in addressing UDDI limitations
Unit 19. Employing Web services caching in WebSphere Application Server V7
Duration: 30 minutes
Learning objectives:
After completing this unit, students should be able to:
 Explain how Web services caching improves performance and responsiveness for both
the service requester and the service provider
 Configure the dynamic cache based on SOAP message contents or the request URI
 Configure the client-side dynamic cache for JAX-RPC based clients, based on SOAP
message contents or the request URI
Exercise 14. Enhancing Web service performance through server-side caching
Duration: 30 minutes
Learning objectives:
After completing this exercise, students should be able to:
 Activate the dynamic cache service for Web service caching
IBM WebSphere Education
http://www.ibm.com/websphere/education
Contact us at: [email protected]




Configure the cache to intercept specific Web service requests
Create the cache specification file and deploy it within a Web service project
Deploy the Cache Monitor application to IBM WebSphere Application Server V7
Monitor cached service requests using the Cache Monitor
Unit 20. Recommended practices for Web services on WebSphere Application Server V7
Duration: 30 minutes
Learning objectives:
After completing this unit, students should be able to:
 Describe XML schema data types recommended for interoperability between different
Web service engines
 Explain the importance of service granularity to ensure loose coupling between service
provider and requester
 Explain the importance of top-down design when creating Web services
Unit 21. Course summary
Duration: 15 minutes
Learning objectives:
After completing this unit, students should be able to:
 Explain how the course met its learning objectives
 Submit an evaluation of the class
 Identify other WebSphere Education courses related to this topic
 Access the WebSphere Education Web site
 Locate appropriate resources for further study
IBM WebSphere Education
http://www.ibm.com/websphere/education
Contact us at: [email protected]