It’s a Boy! It’s a Girl! It’s a “Mule Application”!

Reading Time: 2 minutes

Mule 3 GA is getting closer with each day, and brings numerous updates with it. Welcome a new member of the Mule family – a “Mule Application”!

What’s in the name? Some of you may have met this baby in its infancy before, or maybe were around to see it make first steps. Those would be even more pleased to see it running around today and welcoming you to play with it 🙂 What did the baby learn in the meantime?:

  • We can now name all our body parts (structure defined, app descriptor introduced, registry custom properties file added)
  • We can stand the cold, all packed up (zipped application archive) or run in our summer shorts (exploded app archive support)
  • We can ride our bike (on-the-fly app deployment), know how to get off it (undeploy at runtime), or even fix it on the go! (runtime app updates)

Pretty exciting stuff, I must say 🙂 Meet the baby in the next public release, and enjoy some docs for now (free Mule account required). Follow the suggested links if things get moved around in the meanwhile:

Mule 3 Release Candidate 2 Released

Reading Time: 5 minutes

The Mule ESB team is pleased to announce the next milestone towards our final Mule 3.0 release. Recent work includes the following areas:

Hot DeploymentMule now supports multiple applications running within the same Mule instance and deployment descriptors for specifying the contents of your deployment (e.g., multiple configuration files). Most of the Mule examples have been converted to the new deployment format*. If you have not yet read about the application deployment model new to Mule 3.0, read this blog post.

Message Exchange Patterns – Message Exchange Patterns (a.k.a. MEPs) give you more explicit and flexible control over the way messages flow through Mule. For example, you can now specify whether you expect a response on a given endpoint or not (see the new attribute “exchange-pattern” on endpoints). In the future, we may introduce additional exchange patterns that allow for different communication styles as well.

Continue reading

New Mule IDE coming

Reading Time: 3 minutes

If you have used the Mule IDE you know it helps greatly to simplify setting up a Mule project in Eclipse, editing XML, and debugging and testing your application.

However, it still requires you to delve into the world of XML and understand how the different elements of a Mule configuration can be chained together. An exciting new project is underway at MuleSoft to revolutionize the simplicity and ease of using Mule. MuleStudio is the next generation of Mule tooling and will provide an Eclipse-based graphical IDE for designing Mule integration flows.

Continue reading

Polling TCP client connector

Reading Time: 2 minutes

Right now TCP inbound endpoints are implemented as TCP servers that listen for data coming from different clients. In Mule ESB 2.2.6 we are adding a new feature to inverse the control: TCP inbounds can now poll data from remote servers.

It is really easy to switch to this strategy. Let’s take a look of how a mule configuration looks like:

Continue reading

Goodbye sync, hello exchange pattern

Reading Time: 3 minutes

When you take a look at the examples that come with the latest Mule 3 milestone release, you’ll notice that endpoints have an exchange-pattern attribute now:

This attribute replaces the synchronous attribute we used before. Why did we change the configuration? The old synchronous attribute was purely a two-way state: it was either true or false. With the exchange-pattern attribute on endpoints we’re free to allow additional values in the future. Also, the term exchange pattern is more accurate than the old synchronous flag. When you define the exchange pattern “request-response” on an inbound endpoint, it’s clear that you are expecting a response.

Continue reading

Test Drive Tcat Server in the Cloud

Reading Time: 4 minutes

Tcat Server remains the most intuitive and easy to use product for enterprise Tomcat users. In the most recent release, we made Tcat Server even easier to try.  Since we launched the product several months ago, downloads for Tcat Server have been increasing exponentially, but we wanted to find a way to reach yet more users that will benefit from using Tcat Server.

We realize that some of you do not have time to download software, install it and take a look. Some of you want to first take a quick look at Tcat Server to decide if its the right choice, without having to go through the download process.

Continue reading

Mule Story 3: Power to the User

Reading Time: 5 minutes

Over the past months, we’ve been regularly blogging about the cool new features that are coming in Mule 3. So far, we’ve presented these features in high level terms. In the coming days, we will start posting more detailed information about all the good stuff Mule 3 will offer and how you will be able to benefit from them.

Obviously, the most visible changes will concern the XML configuration. But, like the tip of the iceberg, that will only be a small part of the whole story. Deeper changes have occurred; and they were all about empowering Mule’s users.

Continue reading

The value of APIs that can be crawled

Reading Time: 15 minutes

Recently, there was an interesting article on ReadWriteWeb questioning the long term effect of the proliferation of public APIs, versus merely offering crawlable data. On one hand – the article argued – APIs offer a great deal of control to the publisher and they are great for access to real-time information. On the other hand, if data is only accessible through an API then it is not available for spiders and crawlers and thus won’t show up in search results. In effect, the public loses out, since less data can be searched for.

However, I think this takes a somewhat limited view on what an API can be. In fact, if the API is designed properly then the API itself can be discovered via a crawler, along with all the information the API provider chooses to make public. This is particularly true for RESTful APIs where ‘discoverability’ is a fundamental design concept. For example, in the open source RESTx project – a fast and simple way to create RESTful web services – a RESTful, documented and fully discoverable API is created automatically.This API consists of links, exposed resources, human- and machine-readable documentation and descriptions of parameters, which are extracted from information contained in the code and in the resources that have been created on the RESTx server. Everything can be discovered merely by following links.

Continue reading

Laying the foundation for RESTful web services

Reading Time: 17 minutes

Ever now and then you find a new piece of software or feature, which ends up changing the way you work, saving you time and just overall making things easier for you and your organization. We think that the RESTx project with its new 0.9.2 release gains such a feature. We call it “specialized components”. What is that, why is it useful and how will it make things easier for you? In a moment I will use an example for illustration, but let me first provide a little background on RESTx. If you are already familiar with RESTx, you can skip over the next chapter.

RESTx: A quick introduction

RESTx – we believe – is the fastest way to create RESTful web services. RESTx is a fully RESTful, small, stand-alone server. A RESTx server houses components – code that implements some functionality for data access, integration or processing, written in either Java or Python.

Continue reading