HomeDigital EditionSys-Con RadioSearch Web Services Cd
B2B Beginning WS Business Process Management Case Studies Content Management Distributing Computing e-Business Electronic Data Interchange Enterprise Industry Insight Integration Interviews Java & Web Services .NET Portal Product Reviews Scalability & Performance Security SOAP Source Code UDDI Wireless WS Standards WS Tips & Techniques WSDL WS Editorials XML

I must admit that the subtitle I used here sounds a bit like an overused marketing cliché broadcast from a late-night commercial on television. Anyone seriously involved in enabling enterprise resources as SOAP-based services on the Web knows that the "today" part is quite a stretch. Although, depending on how you look at it, you may be able to take it quite literally.

For instance, suppose you were able to take software assets that currently exist behind the corporate firewall and plug in a network gateway or router that has the ability to instantly render them as Web services. Imagine that all you need to do is define which back-end components you want exposed as Web services, specify various network and security permission settings, open the firewall gates, do some UDDI advertising, and you're ready to go. And, imagine that this can be done across a variety of custom and packaged systems within the corporate enterprise using a simple administrative interface. As you might have already guessed, the scenario I just described is available today with SOAPswitch from Actional Corporation.

Overview
SOAPswitch is a nonintrusive proxy server that exposes custom and packaged applications as Web services without any programming involved. It's designed to be situated behind the corporate firewall with other back-end systems, allowing you to manage all of your Web services under one point of control. It can route existing Web services on the back end, or serve as a proxy for J2EE or COM custom applications and a variety of leading packaged systems such as SAP and Siebel. You can consider it as more to a Web service gateway or router than as an application server.

SOAPswitch is a direct descendant of Actional Control Broker 3.0, with a lot of new Web services-based functionality added. This is especially important when you take the various packaged software adapters into consideration for robustness and reliability. You're not talking about a 1.0 release here.

Product Application
SOAPswitch is designed for those organizations which have a variety of custom and packaged applications across a multitude of platforms and technologies that want to combine these systems under a centralized Web services-delivery platform. Integrating these systems into a corporate Web-services substrate does not require developers to code each Web service, but instead is a matter of configuring and deploying each back-end system interface that SOAPswitch can see. The product does not contain any data transformation or mapping tools, nor does it contain any business process management tools. Therefore, don't expect it to manage sophisticated transactions across disparate systems. That will require a considerable amount of analysis and development, and an application server with Web-service capabilities. But, SOAPswitch can take the various systems in your legacy environment and expose the various application interfaces under a common Web-service substrate - the first step in achieving more advanced Web services for your enterprise.

Features
Some of the key features of SOAPswitch include:

  • Adapters to custom application platforms, including J2EE and COM
  • Adapters for leading packaged software products, including SAP, PeopleSoft, and others
  • Performance monitoring and reporting
  • Event logging and reporting
  • Web-service auditing
  • Security management (including support for single-login authentication servers)
  • System alerts (will send an e-mail if a particular service is having trouble)
  • Security profiles

    First Impressions
    Installing SOAPswitch on my Windows 2000 Server-based system was smooth and effortless. The only problem was that there was no indication that the SOAPswitch Windows service was up and running when the install completed. I guess I've been trained over the years to expect some sort of kick-start operation to start things off. Once I figured out that SOAPswitch was running, I quickly moved on to the browser-based administration console to configure the server. I found the setup wizard to be clear, unambiguous, and extremely well documented, and one of the best examples of a browser-based wizard I've worked with in a while (see Figure 1).

    Figure 1

    One neat feature of the configuration process was when it came time to set up the alert e-mail. After entering the necessary configuration information including SMTP server, e-mail address, etc., the system will deliver an email confirmation message to you. Quite accidentally, I entered my POP3 address instead of the SMTP server. The configuration wizard clearly reported the e-mail setup error and gave sufficient information to diagnose the problem. In all, it took me 10-15 minutes to set things up, although if I hadn't messed things up setting up the e-mail, it would have taken less time.

    Making my way further through the administrator console, I was quickly able to take an existing Web service using the WSDL URL and have SOAPswitch act as a proxy. In addition, SOAPswitch was able to introspect the various classes and EJB components managed by a WebLogic server I had previously installed on the test system. Configuring a Web service from an EJB component was equally straightforward (see Figure 2).

    Figure 2

    One note: in order to browse WLS components, you will need to manually configure a CLASSPATH property value in SOAPswitch so that it points to the WLS deployment directory area. If I could improve one area, it would be the ability to view EJB components remotely using the WLS T3 protocol instead of having to directly reference the JAR files on the SOAPswitch server.

    Testing
    Testing a Web service using SOAPswitch is limited to being able to view and manually edit the request and response SOAP messages using the product's Web Services Viewer. More detailed testing will require you to use some other process or tool. An alternative approach would involve downloading a Java client stub produced by SOAPswitch and using that as a basis for a custom test bench application for your service.

    Security
    SOAPswitch has built-in support for the HTTPS protocol and provides certificate and keystore management tools. You can also configure SOAPswitch to authenticate users through a directory server or from a single-point authentication system such as Netegrity SiteMinder. With the rich set of security features provided with SOAPswitch, you can configure a Web service to use the HTTPS protocol from an existing non-authenticated service on the back end or map a single authentication ID to multiple back-end accounts. There is also support for setting up security profiles.

    Status and Alerts
    One of the main selling points of SOAPswitch is its ability to perform centralized monitoring, logging, and reporting for all Web-service activity. A system health tab in the SOAPswitch administrator provides you with real-time status (using the familiar stoplight green/yellow/red indicators) for each of the configured back-end systems. You also get a set of four real-time charts providing you with inbound and outbound requests, failure rates, and other vital statistics (see Figure 3). Another important feature is the ability to set up custom alerts for a specific Web service and condition. For instance, I can have the system notify the administrator via e-mail if the legacy service takes too long to process a particular service, or if it fails for any reason. The ability to quickly identify problems occurring in the back end cannot be stressed enough in a Web-service production environment.

    Figure 3

    SOAPswitch provides rich auditing and report capabilities for all Web-service activity. Persisted by a back-end relational database system, you can audit specific services and report on any number of metrics, both real-time and historical. This will be very useful for tracking down those pesky back-end problems.

    Event Logging
    SOAPswitch maintains an event log that captures all error and warning conditions across the system. Like the auditing feature, you can also configure custom reports based on logging information. In addition, you have control over which severity levels are being logged by the system.

    Product Availability
    SOAPswitch ships in two versions: Professional Edition (no high-availability features and can only connect to J2EE-and COM-based services) and Enterprise Edition (support for packaged software solutions, high availability, and clustering). Actional SOAPswitch is currently available directly from Actional. Additional Web services products will be available from the company soon.

    Summary
    SOAPswitch is one of the first products to adopt a new and exciting concept working its way through the Web Services Interoperability Organization - that the various protocols involved in Web services (SOAP, WSDL, UDDI) can potentially be integrated with the application layer of the OSI model (known as layer 7 markup). This makes perfect sense, and relegates SOAPswitch into a new product class that views Web-service integration from a network perspective - hence the name "SOAPswitch".

    About the Author
    Joe Mitchko is a lead engineer working for Nekema, Inc., a leading Web-service technology provider for the insurance industry sector. Joe is also the product review editor of Web Services Journal. joe@sys-con.com

    All Rights Reserved
    Copyright ©  2004 SYS-CON Media, Inc.

      E-mail: info@sys-con.com

    Java and Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. SYS-CON Publications, Inc. is independent of Sun Microsystems, Inc.