Comments
Richard Davies wrote: The UK has a good crop of technology pioneers in cloud computing - for example ElasticHosts, FlexiScale, Flexiant, OnApp - and also some strong government initiatives such as G-Cloud. We will have to see whether this kind of technical leadership converts into swift mass-market adoption or not.
Cloud Expo on Google News

SYS-CON.TV
Cloud Expo & Virtualization 2009 East
PLATINUM SPONSORS:
IBM
Smarter Business Solutions Through Dynamic Infrastructure
IBM
Smarter Insights: How the CIO Becomes a Hero Again
Microsoft
Windows Azure
GOLD SPONSORS:
Appsense
Why VDI?
CA
Maximizing the Business Value of Virtualization in Enterprise and Cloud Computing Environments
ExactTarget
Messaging in the Cloud - Email, SMS and Voice
Freedom OSS
Stairway to the Cloud
Sun
Sun's Incubation Platform: Helping Startups Serve the Enterprise
POWER PANELS:
Cloud Computing & Enterprise IT: Cost & Operational Benefits
How and Why is a Flexible IT Infrastructure the Key To the Future?
Click For 2008 West
Event Webcasts
Product Review: "MagooClient 2.1 XML Messaging Client"
A lean and mean client for XML-based business processes

When I first looked over MagooClient from Magoo Software, it was difficult to categorize. I expected that it would be another composite application builder, but that's not what I found. Instead I found a tool that not only allows users to interact with business processes, but that also becomes part of the business process itself. MagooClient can not only reach out and perform Web service requests, but it is designed to also be inserted in the path of XML messages.

XML Messaging Client
Magoo Software describes MagooClient as an XML messaging client. That is very fitting, since it has been modeled to operate in a fashion similar to an e-mail client. As you can see in Figure 1, the MagooClient main window looks very much like a stripped-down e-mail client. Users compose messages via forms that are constructed on the fly. The messages can hang around in the "drafts" folder until the user is ready to send them to a particular destination. Once sent, messages are moved to the "sent" folder.

The "inbox" is where inbound messages land. What types of messages would I expect to see here, you might ask. Well, the most obvious type would be responses to outbound synchronous Web service calls. More interesting though, is the fact that MagooClient can receive XML messages over various transports. It even has an embedded HTTP server and can listen for inbound XML messages. Users can inspect and edit these inbound messages and forward them on to other services.

Essentially MagooClient can initiate business processes by creating and sending XML messages to services. It can allow for review, validation, and editing of messages, and finally, it can route messages and perform exception handling.

Let's peel the onion and look deeper.

Message Types
MagooClient maintains a message type catalog. Although the software can display any XML as a form, the catalog enables it to support message creation, validation, and editing.

MagooClient provides a wizard that simplifies population of the catalog. It allows import of either XML Schema or WSDL directly from a file or over the network from an arbitrary URL.

The MagooClient uses its own proprietary XML Schema capability for efficiency, but allows validation against the Apache Xerces parser for comparison. The WSDL and schema support are excellent. I keep a few large WSDL and schema around from old projects that I typically use as litmus tests for new tools. They are valid, but have caused other tools to fail. I was able to import them without trouble into the software.

Note that message types need not necessarily exist in the catalog before message creation can occur. The software has a nifty feature that allows a message to be created from a WSDL or XML Schema on the fly. This process automatically populates the catalog.

Forms
MagooClient automatically renders forms from the XML content. There is no form design here; it's neither supported nor required. MagooClient does a beautiful job of creating a usable layout.

Figure 2 displays the message window. Note that the form is flat and arbitrarily long based on the size of the XML, but navigation is made possible by tree representation of the message, which is displayed in the navigation panel to the left of the window.

Clicking on nodes in the tree navigation panel scrolls the appropriate form section into view. Clicking on a field in the form causes the tree navigation panel to highlight the appropriate node. It is a nice clean way to move around and edit the document.

I have always been a fan of tightly typed schema definitions. These not only allow for much of the validation to be provided by the schema automatically, but also have the added benefit of supporting automated form engines such as MagooClient. MagooClient leverages the XML Schema information in order to render and validate forms. For example, enumerated values are presented as drop-down lists, value ranges as radio buttons or spinners, and input fields are sized from the schema accordingly.

It is one thing to create forms based on static structures, but XML Schema allows for variable message structure. The software allows for adding, removing, or replacing elements at any node in the tree where deemed valid by the schema. This is done by right clicking on a node in the tree navigation panel. A pop-up menu will list the valid schema types that can be inserted.

Transports
Remember earlier I stated that MagooClient can become part of the XML business process. It does this by supporting receipt and transmission of messages over a number of transport mechanisms. Transports map the ability to send and receive messages to a particular protocol or vendor implementation. This allows a message to be sent simultaneously using multiple transports to various destinations. Transports, just as message types, must be configured in the catalog. Currently the software supports HTTP, POP3/SMTP, and JMS as transports. The HTTP support is relatively straightforward, so I won't go into it here.

As mentioned earlier, the software was modeled on an e-mail application and although atypical, e-mail as a transport can be a practical, cost-effective form of store-and-forward XML messaging in some instances. The MagooClient can support multiple e-mail accounts simultaneously. The software can be configured to pull messages from the mail server upon request, or a polling interval can be configured in order to retrieve messages automatically. I was able to quickly route a set of messages through one of the many free Internet e-mail services and retrieve them again as a test.

MagooClient also supports transport over the Java Message Service (JMS). This allows the software to communicate with enterprise-class messaging providers. The MagooClient uses the asynchronous listener model to ensure that messages are received as soon as they arrive at the provider.

MagooClient provides a nifty transport monitor that can be launched from a menu. Figure 3 shows the monitor, which logs all communication to and from the application. This allows the user to view all of the low-level message details such as handshake, properties, and headers.

Scripting
Embedded within MagooClient is the Mozilla Rhino scripting engine. Rhino is an open source JavaScript implementation with extensions that add native XML support.

The software provides an integrated script editor with drag-and-drop capabilities from the tree panel of the message window. Scripts can create new messages, manipulate existing messages in the environment, call out to external Web services, and interact with the user via a built-in dialog object.

Essentially, scripts can be used as macros and invoked from a pop-up menu, as extended validation rules to check complex interfield relationships, or they can provide dynamic validation and population of form fields using external callouts. Also, message types can be configured so that scripts automatically run on receipt or when open.

Rules
MagooClient supports rules that can either route messages on to a destination or file the message in a particular folder. Rules are basically a fixed set of conditions that when satisfied, fire off the configured routing or filing operation. The conditions vary from matching on various addressing information to message type, validity, transport, and direction.

Conclusion
Magoo Software has leveraged a simple e-mail-style messaging model to deliver a product that is easy to learn and straightforward to use, yet still powerful. MagooClient XML support is excellent. The software's ability to support multiple transports and destinations, dynamically render forms, and apply scripts and routing rules makes this product worth a look. I definitely recommend that you check out MagooClient (see company info).

About Paul Maurer
Paul Maurer is a principal in the financial services practice of a leading consulting services company.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

When I first looked over MagooClient from Magoo Software, it was difficult to categorize. I expected that it would be another composite application builder, but that's not what I found. Instead I found a tool that not only allows users to interact with business processes, but that also becomes part of the business process itself. MagooClient can not only reach out and perform Web service requests, but it is designed to also be inserted in the path of XML messages.


Your Feedback
SYS-CON Australia News Desk wrote: When I first looked over MagooClient from Magoo Software, it was difficult to categorize. I expected that it would be another composite application builder, but that's not what I found. Instead I found a tool that not only allows users to interact with business processes, but that also becomes part of the business process itself. MagooClient can not only reach out and perform Web service requests, but it is designed to also be inserted in the path of XML messages.
Latest Cloud Developer Stories
As a result, it said, of “customer feedback and evolving usage patterns,” Microsoft cut the price of its cloud-ified SQL Azure database 48%–75% for databases larger than 1GB and introduced a new entry-level 100MB model. It blogged that it’s noticed that many projects start smal...
Wide and cheap availability of cloud-based media services is upon us. With the transformations these services are already bringing to the consumption of music, video and interactive media, change has likewise come to professional workflows. Documents in 2012 are read, written, co...
With Cloud Expo 2012 New York (10th Cloud Expo) just four months away, what better time to start introducing you in greater detail to the distinguished individuals in our incredible Speaker Faculty for the technical and strategy sessions at the conference... We have technical ...
Fresh off a happy quarter, Rackspace said Thursday that it’s bought SharePoint911, one of those you-never-heard-of-them outfits that does SharePoint consulting, training and JumpStart services so it can deliver newfangled SharePoint services along with its existing SharePoint hos...
Cloud is a shift from the focus on underlying technology implementation to leveraging existing implementations and further building upon them. Cloud orchestration or a network of clouds is the wave of the future where these clouds can operate with elasticity, scalability, and eff...
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

SYS-CON Featured Whitepapers
ADS BY GOOGLE

Breaking Cloud Computing News

Mayor Jerry Sanders and San Diego City Councilmen Kevin Faulconer and Todd Gloria o...