Application Console Overview

iWay Service Manager (iSM) can be used as a platform for redistributable applications that are developed around pre-configured channels. In these cases, developers may need to expose some configuration options to the user, but without the full power of the iSM Administration Console. Two common scenarios are seen; either maintaining a completely separate resource for an application or providing a customized configuration of the server itself.

It is not intended that the server be a fully-fledged servlet engine. There are many such engines for that purpose, such as Apache Tomcat.

The separate resource scenario is a subset of the effort in developing the customized configuration application. The tutorial in this appendix will address that situation.

Consider the following scenario, which this tutorial is based upon:

A company might want develop an application that picks up purchase orders and sends them to its B2B hub in the proper format. When the company distributes this application to its partners, the partner should be able to specify the directory where the application should look for purchase orders, but unable to change other details of the channel configuration or have the ability to create new channels.

One solution for the developer would be to configure the iSM application using the _PROPERTY() runtime function. This function looks up a value from a standard Java properties file and then can be used in any context where runtime functions are evaluated. For example, you could set the input directory parameter of the File channel to:

_PROPERTY(my.properties, fc.inputdir, somedefault)

A properties file (for example, my.properties) can then be created using the following format:

fc.inputdir=c:/input

The partner or end-user can now edit the properties file to set the parameters that the developer wanted to expose without ever viewing the iSM Administration Console or modifying any core iSM configuration files. In simple applications, this solution may be sufficient. However, when more complex functionality is required (for example, to include monitoring capabilities or to provide a graphical user interface for configuration), a developer can create application consoles.

Application consoles use standard iSM components and development techniques to create an application-specific graphical user interface for configuration and monitoring. An application console is an HTTP channel with routes that can perform the required tasks and output HTML pages with menus and information for the user. There are many ways to design a channel like this, depending on the application requirements. This appendix describes some basic techniques and provides a sample application console, which is referred to as the red console.