Simple Client

This panel allows to call any Biomoby service and to display its results. It can be used both for testing your own services (even before they are deployed in Tomcat) or for regular invocation of any Biomoby services.

First, select a service you wish to call in a service tree. It will populate the Service Input Data table on the left with the definition of data for the selected service:

How to create input data

There are two ways to prepare data for a service call: using the Service Input Data table, or having them already in an XML format expected by Biomoby services. The table supports almost all possible data inputs a Biomoby service can ask for (except a collection of inputs - this will be added later; ask me if you need it sooner). The description how to enter data in the table is in a separate document (because the same table is used in a standalone client) docs/CreateInputClient.html (in your local jMoby directory), or from jMoby site. Here only shortly, what the table does:

It displays a full structure of a given data type and then it allows:

An alternative is to check the box Take an input from this XML file, and to give a file name with input data. This is how you can create such file in the first place:

  1. Select service, fill the Service Input Data.
  2. Check the box No real call, just show/echo input. Make sure that Show input as XML is checked.
  3. Click on Call service.
  4. Click on the Save icon in the bottom-left console.

How to call a service

Select an appropriate radio-button in the service invocation box:
Use service's usual endpoint
calls a service using the endpoint that is registered in the Biomoby registry for this service.
Use this endpoint
allows to call a service using any endpoint. It is mostly useful when you deployed your new service locally and want to test it (as a deployed service) before putting it on a public Tomcat.
Ask registry where the service is and call it
should be the same as Use service's usual endpoint except that it really goes to a registry and takes the service endpoint from there - the two may differ if you have not updated your local cache, for example.
Use this local class
is a very handy option because it allows you to call your service before it is deployed. Put here a full class name. Just make sure that class that implements your service (and all classes used in the implementation) are on the classpath when the Dashboard is started.

Send data... as byte array should not have any visible effect unless the called service does not comply fully with the Biomoby API.

The button Call service does the calling. After that you can stop the service using the Stop service button (which does not too much, at the moment, but may do a real cancellation after the asynchronous services are added to the Biomoby API).

Viewing results

Each result returned by a service can be viewed at least in two forms (viewers) - as a plain text or as an XML tree. Other viewers may be also available - but for them to be activated you need to have pre-generated Java data types before you start Dashboard. If you do not have them, Dashboard will warn you and explains how to do it:
Class 'org.biomoby.shared.datatypes.MapDataTypes' was not found. It may indicate that you have not generated all Biomoby data types from a Biomoby registry. See for details. If you are a jMoby developer just type: ./ moses-datatypes. Or perhaps, they just need to be compiled: ./ moses-compile.
Some results can be saved - click on a Save button in the Results console.

Each service call automatically replaces results of the previous call. If you wish to keep them (also if you wish to see results in a bigger window), use the Detach button at the bottom of the Result console.