8 CopyrightIBM Corporation, 2008. A llRightsReserved. Thispublication m ay referto productsthatare notcurrently available in yourcountry. IBM m akesno com m itm entto m ake available any productsreferred to herein. IBM Power Systems ™ Agenda Key: Session Number: Web Services and SOA for the RPG Developer on IBM i IBM Integrated Web services for i Dan Hiebert IBM [email protected]
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
8 Copyright IBM Corporation, 2008. All Rights Reserved.
This publication may refer to products that are not currently available in your country. IBM makes no commitment to make available any products referred to herein.
IBM Power Systems™
Agenda Key:Session Number:
Web Services and SOA for the RPG Developer on IBM i IBM Integrated Web services for i
• IBM Integrated Web Services for i– “An Easy Step to starting with SOA on System i”
• Simplify the process of externalizing RPG/COBOL business logic as a service.• Externalize various RPG/COBOL business tasks as services. • Abstracts the hidden complexities of Web services for IBM i.• Provide RPG/COBOL Developer easy to use Web interface, not requiring
• Merged the Development Process and Deployment Server• 2 Steps to Create a Web services server on IBM i• 7 Steps to Deploy an RPG/COBOL Service• Built on IBM Integrated Web Application Server for I
– Note: 2 Methods returned for every procedure or program• XML - Automated Data (Including Data Structures)• Standard Serialized objects.
“A 'Web service' (also Web Service) is defined by the W3C as "a software system designed to support interoperable machine-to-machine interaction over a network"[1]. Web services are frequently just Web APIs that can be accessed over a network, such as the Internet, and executed on a remote system hosting the requested services.”
• Integrated Web Services for IBM i – http://www.ibm.com/systems/i/software/iws/
• IBM Technical Information and Example– http://www.ibm.com/developerworks/
• WebSphere Enterprise Service Bus – http://www-306.ibm.com/software/integration/wsesb/
• WebSphere Process Server– http://www-306.ibm.com/software/integration/wps/
8 Copyright IBM Corporation, 2008. All Rights Reserved.
This publication may refer to products that are not currently available in your country. IBM makes no commitment to make available any products referred to herein.
8 Copyright IBM Corporation, 2008. All Rights Reserved.
This publication may refer to products that are not currently available in your country. IBM makes no commitment to make available any products referred to herein.
IBM Power Systems™
Agenda Key:Session Number:
Web Services and SOA for the RPG Developer on IBM i
• IBM i integrated Web services server– Based on Apache AXIS2 version 1.3 - runtime– A set of native service programs and java tools that enable you to build Web
service applications from existing ILE RPG/COOBL Programs dynamically generating WSDL and Java Artifacts.
– Supported on V5R4, V6R1
• IBM i integrated Web services server has the following capabilities: – Support for Web Services Description Language (WSDL 1.1, supports WSDL
1.2 but right now we are not advertising the fact ) - document literal only – SOAP 1.1 (Enabled) SOAP 1.2 (Disabled) REST (Disabled) - – Supports Web Services Invocation (WSI) 1.0 basic profile compliance – Support for Secure Sockets Layer (SSL) – Java API for XML-based remote procedure call (JAX-RPC) style
implementation – Support IBM i non-Java languages; RPG, COBOL, [C,C++]
IWS Server Restrictions• SOAP 1.1 • WSDL 1.1 • PCML (deployment of ILE-based Web services)
– The deploying of ILE programs as Web services is dependent on a Program Call Markup Language (PCML)
– The following data types are not supported by PCML: • Date • Time • Timestamp • Pointer • Procedure Pointer • 1-Byte Integer • 8-byte Unsigned Integer
– Return values and parameters passed by value can only be 4 byte integers. – Varying-length arrays, and data structures containing varying-length subfields are not supported. – More details regarding RPG and PCML can be found in the ILE RPG Reference. More details
regarding COBOL and PCML can be found in the ILE COBOL reference.
• Parameters– A procedure in an ILE service program (*SRVPGM) that is to be externalized as a Web service
operation can have a maximum of 7 parameters. An ILE program (*PGM) can have a maximum of 32 parameters.
– Note: The work around is to create a Data Structure as a parameter which is a single parameter.
Security DiscussionSecurity ConcernsMessages are being sent over the intranet/internet – Are they Secure?
Web Services – Security• HTTP• WS-Security
Three Available Security Mechanism’s • HTTP - SSL encryption and authorization (Certificates) (Basic authorization)• WS-Security (No support on IBM Integrated Web services server for i)• IBM Datapower Appliances – (Pretty cool utility)
• Serviceability– Utility to capture “SOAP/XML” communication for support?
• Migration tool IBM i WS server to WAS Web Service?– Or to IBM i ;)
• WS-Security specification?
8 Copyright IBM Corporation, 2008. All Rights Reserved.
This publication may refer to products that are not currently available in your country. IBM makes no commitment to make available any products referred to herein.
IBM Power Systems™
Agenda Key:Session Number:
Web Services and SOA for the RPG Developer on IBM i
• IBM i integrated Web services client– Based on Apache AXIS C++ Version 1.5
– A set of native service programs and java tools that enable you to build Web service client applications from existing Web Service Description Language (WSDL) files by generating C/C++ stubs
– Supported on V5R4, V6R1
• IBM i integrated Web services client has the following capabilities: – Support for Web Services Description Language (WSDL) - document literal only
– Supports Web Services Invocation (WSI) 1.0 basic profile compliance
– Support for Secure Sockets Layer (SSL)
– Java API for XML-based remote procedure call (JAX-RPC) style implementation
– Support IBM i non-Java languages; C, C++, RPG, COBOL
8 IBM Corporation 1994-2007. All rights reserved.References in this document to IBM products or services do not imply that IBM intends to make them available in every country.
Trademarks of International Business Machines Corporation in the United States, other countries, or both can be found on the World Wide Web at http://www.ibm.com/legal/copytrade.shtml.
Intel, Intel logo, Intel Inside, Intel Inside logo, Intel Centrino, Intel Centrino logo, Celeron, Intel Xeon, Intel SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both.IT Infrastructure Library is a registered trademark of the Central Computer and Telecommunications Agency which is now part of the Office of Government Commerce.ITIL is a registered trademark, and a registered community trademark of the Office of Government Commerce, and is registered in the U.S. Patent and Trademark Office.UNIX is a registered trademark of The Open Group in the United States and other countries.Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.Other company, product, or service names may be trademarks or service marks of others.
Information is provided "AS IS" without warranty of any kind.
The customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer.
Information concerning non-IBM products was obtained from a supplier of these products, published announcement material, or other publicly available sources and does not constitute an endorsement of such products by IBM. Sources for non-IBM list prices and performance numbers are taken from publicly available information, including vendor announcements and vendor worldwide homepages. IBM has not tested these products and cannot confirm the accuracy of performance, capability, or any other claims related to non-IBM products. Questions on the capability of non-IBM products should be addressed to the supplier of those products.
All statements regarding IBM future direction and intent are subject to change or withdrawal without notice, and represent goals and objectives only.
Some information addresses anticipated future capabilities. Such information is not intended as a definitive statement of a commitment to specific levels of performance, function or delivery schedules with respect to any future products. Such commitments are only made in IBM product announcements. The information is presented here to communicate IBM's current investment and development activities as a good faith effort to help with our customers' future planning.
Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon considerations such as the amount of multiprogramming in the user's job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve throughput or performance improvements equivalent to the ratios stated here.
Prices are suggested U.S. list prices and are subject to change without notice. Starting price may not include a hard drive, operating system or other features. Contact your IBM representative or Business Partner for the most current pricing in your geography.
Photographs shown may be engineering prototypes. Changes may be incorporated in production models.