Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
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]