A common need during development is running Zato servers in foreground instead of using the full CLI.

This can be easily achieved by issuing a command like below:

$ /path/to/zato-binary/bin/py -m zato.server.main /path/to/server

For instance, if you've installed Zato to /opt/zato and a server to /home/user/server1, the full command will be

$ /opt/zato/bin/py -m zato.server.main /home/user/server1

Note that it can be shortened to the following one if you've followed the recommended installation steps and Zato binaries are on PATH

$ py -m zato.server.main /home/user/server1

Server started in such a way can be stopped using Ctrl-C as in the screenshots below.

Screenshot Screenshot

Note that as an additional bonus, log levels will be in color when servers run in foreground.

Screenshot

Linux Journal subscribers, Zato was featured in the November 2013 issue.

Please check it out for an article that presents the project's approach to integrations using treasury.gov's API as an example of building useful and interesting ESB and SOA services out of more complex and low-level ones.

Both the recommended methodology and code samples are offered along with a rundown of the Zato project's features.

Cover

Article

Let's thank Allan Douglas R. de Oliveira, Daniel Reis and Danilo Chilene who contributed the Portuguese translation of the ESB and SOA introduction:

https://zato.io/docs/intro/esb-soa-pt.html

If you'd like to know more what an Enterprise Service Bus and Service Oriented Architecture as understood by the Zato project should look like, this is the great place to start.

Note that the article is available in English and ру́сский as well.

Despite being primarily an SOA/ESB middleware and backend server, Zato does allow one to produce any content that can be transported over any of the procotols supported, including HTML through HTTP.

The ability to output HTML comes in particularly handy when there's a need to create a quick dashboard for a Zato solution yet running another deamon to serve HTML is not practical.

In that case, you can easily make use of the HTMLService that has just been uploaded to zato-labs.

The service exposes one method generate_payload which expectes you to provide a set of business data and a Django template to render the data in.

Here's a sample client service using the base one to output a list of customers ...

400: Invalid request

... and here's the result after hot-deploying it on a cluster and exposing it through a channel:

Screenshot

Naturally, there's nothing preventing you with serving or linking to Twitter Bootstrap, jQuery or any other tool to make the result as attractive as possible.

Thanks to the work of Alex Tyrba, the no-nonsense introduction to ESB and SOA (original in English) has been translated to Russian. Please find it here:

https://zato.io/docs/intro/esb-soa-ru.html

If you're looking for more straight-to-the-point information on how an Enterprise Service Bus and Service Oriented Architecture should look like, Zato project is the place to learn about it.

Enjoy the read and again, many thanks to Alex!