SOAP Articles & White Papers
- Fun with SOAP Extensions
One of the more interesting things you can do with the .NET Frameworks Web Services technology is create SOAP Extensions. These extensions allow you to gain access to the actual network stream before it is deserialized into objects within the framework, and vice versa.
SOAP Extensions allow developers to create very interesting applications on top of the core SOAP architecture found within .NET. For instance, you can implement an encryption algorithm on top of the Web Service call. Alternatively, you could implement a compression routine, or even create a SOAP Extension that will accept SOAP Attachments.
Also see: SOAP Extensions with VB.Net (Source Code)
- Idoox Introduces One-stop Shop for Web Services
Idoox WASP provides a single platform for creating, publishing, discovering, and using Web services.
The idea of Web services has been floating around for a while, and we have seen many companies embracing the concept and moving ahead with implementation plans. Just like a Web application that consists of server-side code, a Web server, HTML pages, and a browser, Web services also consist of various components. Implementations of SOAP and UDDI have been in existence for a while. What caught my attention with Idoox's WASP (Web Application and Services Platform) was that it provides a single platform for creating, publishing, discovering, and using Web services.
- Interoperability with the Microsoft SOAP Message Validator Sample Tool
This article introduces Microsoft SOAP Message Validator, a sample tool used by developers to verify that their SOAP messages conform to the SOAP specification.
See Also: Download Soap Message Validator
- SOAP Toolkit 2.0: New Definition Languages Expose Your COM Objects to SOAP Clients
In SOAP Toolkit 2.0, the Services Description Language (SDL) has been replaced with the Web Services Description Language (WSDL) and the Web Services Meta Language (WSML). WSDL and WSML files describe the interfaces to a service and expose COM objects to SOAP clients. This article describes a custom tool, IDL2SDL, which takes an IDL file and produces WSDL and WSML files without waiting for a DLL or TLB file to be generated. Also shown is a customized development environment in which WSDL and WSML files automatically reflect the changes to IDL files.
- Features of Apache SOAP 2.2 Apache Soap is an Apache project which defines the SOAP protocol in Java. This project is based on the source of IBM's SOAP application, SOAP 4J. The latest version of this implementation, dated May 30, 2001, is version 2.2 of the project.
Apache SOAP 2.2 defines almost all of the SOAP1.1 note, in the same way as the whole "SOAP Messages with Attachments" Note from the W3C.
This article discusses the features of Apache SOAP 2.2
- SOAP security extensions: digital signature SOAP Security Extensions: Digital Signature (SOAP-DSIG) defines the syntax and processing rules for digitally signing SOAP messages and validating signatures. This article discusses how SOAP-DSIG is related to SSL, and describes how the two technologies complement each other. Digital signatures allow messages to be as authentically sent by the origin user or software. Unfortunately, the Simple Object Access Protocol (SOAP) 1.1 did not include provisions for signing messages and thus lacks this security. My cohorts and I sent a proposal for adding digital signature technology to SOAP, which has since been accepted by the World Wide Web Consortium as the SOAP-DSIG Note, defining the syntax and processing rules for digitally signing SOAP messages and validating signatures. This technology has since been implemented into shipping products from IBM, Microsoft and others.
- Using ATL Server to Build an Asynchronous SOAP Client in Unmanaged C++ SOAP opens up a new world of Web Services, letting you make function calls across a network or the Internet. But this flexibility creates new problems when your app needs to wait for calls to return from halfway around the world. What you need is an asynchronous SOAP client that takes advantage of threading to continue execution while waiting for calls over the wire. This article covers the basics of building such a client with ATL.
- SOAP is really Simple
Using a very simple Visual Basic application as a client and an ASP Page as a server, Darshan Singh shows how SOAP works.
- SOAP Specification
SOAP is a lightweight protocol for exchange of information in a decentralized, distributed environment. It is an XML based protocol that consists of three parts: an envelope that defines a framework for describing what is in a message and how to process it, a set of encoding rules for expressing instances of application-defined datatypes, and a convention for representing remote procedure calls and responses. SOAP can potentially be used in combination with a variety of other protocols; however, the only bindings defined in this document describe how to use SOAP in combination with HTTP and HTTP Extension Framework.
- DNA 2000: Opening new Windows
In classic style, Microsoft held a huge press event in San Francisco two months ago to announce their latest plan to take over the world: Windows DNA 2000, a new riff on their distributed application architecture which, they claim,will help fulfill the destiny of the Internet by evolving Internet applications to the next level.
In his speech, Steve Ballmer listed five areas of focus for the Windows DNA 2000 initiative: Extended programming model. Ideally, the programming model for using remote services within the enterprise and across the Web would be the same. But there are some big differences between these two environments, and while a worthy goal, a unified programming model will require a lot of compromises. Microsoft unveiled a new protocol proposal, the Simple Object Access Protocol, or SOAP, submitted to the IETF standards committee to address this problem. I'll take a detailed look at the SOAP protocol below because I think this is the most interesting aspect of the whole announcement.
- A closer look at SOAP
In this Soapbox opinion piece, Brett McLaughlin casts a critical eye on the Simple Object Access Protocol, assessing the value this much-discussed new technology can provide developers and demonstrating its foundation in a mixture of the old RPC (remote procedure calls) technology and in XML. Brett examines RPC, XML-RPC, RMI, and SOAP in detail, comparing and contrasting the use of each, and discusses whether SOAP makes sense. This article also includes sample code for a SOAP envelope.
Also see: A closer look at SOAP, RPC, and RMI
In this second installation of the Soapbox column, Brett McLaughlin compares the Simple Object Access Protocol in more detail with RMI and RPC, and suggests how you can make the best choice among the three messaging protocols.
He looks at the real-world SOAP implementations from IBM and Microsoft and examines the limitations of XML -- SOAP's underlying encoding format -- and the problems involved in it as a full-fledged programming language. The article includes sample code for RPC and SOAP airline ticket requests, for side-by-side comparison.
- SOAP: Simple Object Access Protocol
A nice article on SOAP from TechMetrix Research.
- Returning ADO Recordsets with SOAP Messaging
This article provides guidelines for exposing an existing COM object in a Web Service using SOAP. These guidelines are illustrated by exploring two different solutions for returning ADO recordsets, ending with a discussion on the pros and cons of each solution, as well as other issues that might arise during the packaging and retrieval of data.
- Java Meets SOAP
Although it would not be difficult to roll your own implementation of SOAP. Java programmers have a simpler solution: IBM and DevelopMentor have released Java libraries that implement the protocol. They are available from www.alphaworks.ibm.com (search SOAP for Java) and www.develop.com/SOAP, respectively.
- A simple SOAP client: A general-purpose Java SOAP client
This article describes a simple, general purpose SOAP client in Java that uses no specialized SOAP libraries. Instead of creating the SOAP request XML document for you under the hood, this client lets you create your own request with any XML editor (or text editor). Instead of merely giving you the remote method's return values, the client shows you the actual SOAP response XML document. The short Java program shows exactly what SOAP is all about: opening up an HTTP connection, sending the appropriate XML to invoke a remote method, and then reading the XML response returned by the server.
- Integrating Apache SOAP with an EJB server Part I Part II Part III Part IV
This is 4 part articles series on how to use SOAP with an EJB server (WebSphere will be the example I use). The series covers how to integrate SOAP with the VAJ WTE environment. The aim is to demonstrate with examples how you can use SOAP with any J2EE server including concerns such as transactions and security.
- Dr.Bob's SOAP & DataSnap papers
This WebBroker application is able to produce the white paper you want, based on your choice of SOAP Server development environment: Delphi 6 Enterprise or Kylix 2 Enterprise (the 60-day trial version at this time), web server type, database (BDE or MyBase), and SOAP Client development environment (again Delphi 6 or Kylix 2 trial).
- Using SOAP and the File System Object to build a text file Upload Facility
This article describes a simple ASP and client side script solution for uploading text files. In this article I will demonstrate how to use an Internet Explorer Form File Input Control to select a folder and its files, then upload all Text files in the directory to a destination folder, using the File System Object (FSO) and the Simple Object Access Protocol (SOAP). No components are needed.
- Web Services and the Simple Object Access Protocol
The Internet is fundamentally changing computing—and consequently, it's fundamentally changing the way business is done. The shift to e-commerce is causing an immense ripple effect through corporate computing systems. Web sites are "growing backwards" as companies integrate their customer management and order fulfillment systems with their online sales systems. The next step is to extend that integration to business partners such as suppliers and distributors.
- SOAP for Platform-Neutral Interoperability
The momentum is building behind the Simple Object Access Protocol (SOAP), a new Internet protocol that promises a new age of interoperability between the various distributed computing factions. SOAP addresses interoperability at the data serialization level, allowing disparate distributed programming systems to interact without disrupting the aspects of each platform that make them desirable to their adherents.
- Why SOAP doesn't lack security while it does
Since the SOAP ("Simple Object Access Protocol") specification was first published last year, it has gotten quite some (critical) attention in regards to its current lack of explicit coverage for privacy, authentication and authorization issues.
For everyone with some common sense it is quite obvious that all those three aspects of security are mandatory for any implementation in any B2B context. So why does the SOAP specification flatly ignore those key issues?
- Messaging: The transport part of the XML puzzle
Need help sorting out XML messaging protocols? This article looks at major transport-level options and compares how they accomplish transferring XML between parties reliably. You'll find an overview of the approaches of XML-RPC, SOAP, WDDX, ebXML, and JMS as they apply to XML transport, with simple example code.
- Simulate SOAP and Web Services
XML and SOAP are two hot topics, and with good reason. The XML (Extensible Markup Language) format is widely accepted as a sort of new and more powerful ASCII table. And the SOAP (Simple Object Access Protocol) distributed computing technology boasts the cross-platform capabilities, flexibility, and ease of use found in HTTP and XML. In fact, you could say SOAP technology was an inevitable "next step" following the broad acceptance of HTTP and XML.
Web Services: SOAP Interoperability
The growing number of SOAP implementations is concrete proof of the real boom being enjoyed, in recent months, by Web Services based on this protocol. And each of the implementations has its own objects, methods, environments, and deployment. Read this article to learn if SOAP keeps the promise of interoperability.
- SCL and DISCO
The July 2000 Professional Developer's Conference was Microsoft's opportunity to lay out before developers many pieces of the new .NET puzzle. Tucked behind the excitement of the Visual Studio .NET (VS7) were two new specification drafts: SOAP Contract Language (SCL) 0.1 and Discovery of Web Services (DISCO).
- Program the Web With SOAP
The future is always now in the computer industry, and nowhere is this more evident than in Internet application development. Microsoft is striving mightily to create a Web that is not only content-rich, but programmable. The cornerstone of this attempt is the Simple Object Access Protocol (SOAP), an XML-based, object-invocation protocol. Microsoft developed SOAP originally as a means for distributed applications to communicate over HTTP and through corporate firewalls. Using the term "Web Services," Microsoft is trying to create a new type of programming paradigm, one that combines Internet standards (HTTP, XML, and SOAP) with existing COM and COM+ object standards.
- Is COM+ Cleaner with SOAP?
From a user's perspective, an application that uses SOAP needn't feel any different from one that uses DCOM—even though the SOAP version will be running over the Internet. But what about us? Will writing SOAP applications feel really different to us? According to Cuneyt Varol, the good news is that if you've already started developing stateless components, SOAP won't really cramp your style—at least not yet.
The new .NET Web Services technology, which promises us a "programmable Web" and cross-platform integration, is the one feature of the new .NET framework that's bound to have the largest impact on us all. The good news is that we don't have to wait for the final version of .NET to start using Web Services. The Microsoft SOAP Toolkit for Visual Studio 6 that's been available since July is all that's needed to start using this technology.
In this article, I'll show you how to use the toolkit to expose a sample bank COM+ application as a Web Service. The bank sample comes with the Platform SDK and will be familiar to those of you who've dabbled with COM+ or MTS.
- .NET from the Enterprise Perspective: SOAP
Looked upon as an application development environment, .NET will be a reengineering of Microsoft's world for developers. But what innovations is .NET offering in a world where the Web is increasingly emerging as a global information, interaction, and commerce space? The answer revolves around SOAP (Simple Object Access Protocol), and SOAP-based Web services, so it's important to get at what SOAP really brings to the table. For those of you unfamiliar with where SOAP came from, let's indulge in a bit of background.
- Performance testing SOAP-based applications: Is your Web service production-ready?
SOAP is a boon in the quest for interoperability between servers -- but it is still a challenge to deliver SOAP-based solutions which perform well in production environments. Frank Cohen offers tips on overcoming scalability problems, and introduces a free open-source utility to proof performance in SOAP-based Web services.
- The Microsoft BizTalk Framework 2.0 is a very good example how to use SOAP's extensibility.
This draft specification provides a general overview of the BizTalk Framework 2.0 conceptual architecture, including the BizTalk Document and BizTalk Message. It provides detailed specifications for the construction of BizTalk Documents and Messages, and their secure transport over a number of Internet-standard transport and transfer protocols.
- SOAP, BizTalk, and Super Scalability
Microsoft's strategy to "embrace and extend" XML, the Extensible Markup Language, includes two key technologies: SOAP, a protocol proposal for simple object access; and BizTalk, the company's schema standard for XML-based e- commerce and enterprise application integration. Lately, it seems the functions of SOAP and BizTalk are moving closer together. XML Magazine editorial director Sean Gallagher and editor Steve Gillmor spoke with John Montgomery, product manager for Web services in Microsoft's developer division, about the convergence.
Interview by Sean Gallagher and Steve Gillmor
- Making SOAP out of Java
Use Java and XML with Apache open source products to build SOAP client and server components on the Internet.
- Web services security
Web Services are one of the cornerstones of the Microsoft .NET Framework, providing information and services to Web applications through well-defined programmatic interfaces built on standard Internet protocols. A key benefit of Web Services is the ease with which they can be accessed over the Internet compared to traditional distributed object models.
- SOAP simplifies Web application development
Businesses wanting to integrate purchasing systems, share business data or participate in the fluid business alliances that global e-business favors will find the recently updated SOAP a key technological enabler.
- DISCO: Discovery of Web Services
This draft represents the current thinking with regard to discovery of services within Microsoft. It is published by Microsoft for the purpose of informing interested parties of the current state of that thinking, not as a finished proposal or commitment to implement. Microsoft will not allow early implementation to constrain its ability to make changes to this specification prior to final release.
- Dave's History of SOAP
SOAP worked with Dave as they knew XML RPC was the existing protocol. It annoys me that everyone wants to be a superstar and invent new protocols without consulting poeple who are already doing it.
- Digital Signatures for SOAP Messages
This tutorial explains how to digitally sign and encrypt your SOAP messages for security.
- ASP+ has excellent SOAP support