Developing Web services

Web services are self-contained applications, based on open standards, that can be invoked over the Web. Web services provide a way for applications to connect and interact easily and efficiently. They can be building blocks of applications used within your enterprise or provide a point of interaction with other enterprises. Because their interfaces are defined according to standards, Web services can interact with other applications that are not Java-based.

You can use ZIETrans Web service support to create service-oriented architecture (SOA) assets that provide standard programming interfaces to business logic and transactions contained within your host applications. These core business tasks can be reused as standard Web services that participate as an integral part of your business process integration plan. Use your core business services as building blocks to develop new internal applications or to integrate with applications outside your enterprise. Your host-based business tasks can then be included in your SOA solutions with IBM® SOA Foundation products, such as IBM WebSphere® Process Server, IBM WebSphere Enterprise Service Bus, and others.

Using a combination of tools from ZIETrans Toolkit and Eclipse, you can create Web services from Integration Objects or from EJB Access Beans. With ZIETrans you can create traditional Web services defined by Web Services Description Language (WSDL) files as well as Representational State Transfer (RESTful) Web services.
Note: You cannot use an Integration Object that is configured to use Web Express Logon in a Web service.

Traditional Web services use several standard ways to formulate information: Simple Object Access Protocol (SOAP), Web Service Description Language (WSDL), Universal Description, Discovery, and Integration (UDDI). This book refers to but does not explain these protocols. You can find information about them by opening the Eclipse documentation (click Help > Help Contents from any Eclipse perspective) and searching for Web service.

RESTful Web services provide an alternative to the traditional WSDL-style Web service implementation and may be more appropriate for your particular needs. RESTful Web services use HTTP instead of SOAP, and may require less bandwidth, which may be useful for devices like mobile phones and PDAs. In addition, use of the HTTP caching infrastructure (with the HTTP GET method) may improve performance for data that can be cached.
Note: Traditional Web services may continue to be more appropriate for cases where a formal description (the WSDL file) of the Web service interface must be established.

RESTful Web services use a stateless architecture and are viewed as resources rather than function calls. They use well-formatted URIs to identify resources, use HTTP method protocols to do create, retrieve, update, and delete (CRUD) activities, and use HTTP header information to define the message formats. For more information about RESTful Web services, see the Rational® Business Developer Knowledge Center at https://www.ibm.com/docs/rbd and search for Architectural styles in web services.

Usually you create ZIETrans Web services from Integration Objects that you have already built, tested, and deployed. This chapter assumes that you have one or more successfully tested Integration Objects that you want to include in a Web service. However, you can start from the very beginning by opening your host terminal, recording one or more macros, creating Integration Objects from the macros, and testing the Integration Objects. Refer to Using Integration Objects for information about creating an Integration Object from a macro.