InnoTecSol >ICS >ICS Version: 0.4.8888 Documentation >IAEICS extension library
ICS Version: 0.4.8888
IAEICS extension library

The IAEICS plug-in provides the interface to the internet application engine (IAE). The internet application engine provides the framework for IAE applications.

The following outlines the steps required to activate and configure the IAEICS extension library.

In order to activate the IAEICS plug-in the iaeics extension library must be loaded according to extension library configuration.

				
<EXTLIBS>
	<LIB>iaeics</LIB>
</EXTLIBS>
				
			

The IAEICS configuration is introduced by the IAEICS tag which must be child of the HANDLER tag.

				
<NODE DIR="c:\Program Files\ics\packages" ALIAS="/iaeics/" BROWSEABLE="NO">
<HANDLER TYPE="REQ" NAME="IAEICS">
<IAEICS COMPOUNDID="mycontextid" 
		   ...	
</IAEICS >
</HANDLER>
</NODE>
				
			

NODE

The node configuration introduced by the NODE tag defines the base node that the IAE applications will be served from. See Node configuration for more information. The static files of each IAE package must be available to be served by the http default handler. The easist way to provide this is to configure the node with an alias and provide the Repository Directory REPODIR (see below) as directory to serve the files from. IAE will only pass files from the static directory of the packages to the default handler, other directories in the space will not be served.

HANDLER

The handler configuration introduced by the HANDLER tag binds the IAEICS handler to the node. The name of the handler is "IAEICS" and its type is of request "REQ". See Handler configuration for more information.

The IAEICS configuration is introduced by the IAEICS tag and provides the following configuration options:

				
<IAEICS COMPOUNDID="mycontextid" 
		   CFGDIR="F:\ics\iae\config"
		   REPODIR="c:\Program Files\ics\packages"
		   DATADIR="F:\ics\iae\data\mycontextid" 
		   DEFAULT="/iaeics/net/innotecsol/ics/icsmon/index.html">
		<AUTHENTICATE TYPE="BASIC" REALM="IOT" PROVIDER="FILE" ANONYMOUSID="iotoperator">
			<FILE FILE="F:\ics\iae\data\user\user.dat"/>
		</AUTHENTICATE>
		<UAM TYPE="FILE" >
			<FILE DATADIR="F:\ics\iae\data\uam" />
		</UAM>	
</IAEICS >
				
			

COMPOUNDID

The attribute COMPOUNDID specifies the name of the compound configuration. A compound represents a context with its configuration that the iae applications run in. Multiple compounds can be configured in an ICS instance, thus that the same iae applications can run with different configurations. A configuration can e.g. include a database configuration

CFGDIR

The attribute CFGDIR specifies the directory where the compound configuration is stored. The actual compound configuration file name is <COMPOUNDID>.xml. In the example configuration above the compound configuration for mycontextid would be loaded from F:/ics/iae/config/mycontextid.xml

See Compound Configuration for more information

REPODIR

The attribute REPODIR specifies the directory where the iae applications are stored. The iae applications normally reside in the packages subdirectory of the ics binaries.

DATADIR

The attribute DATADIR specifies the data directory where the iae applications should store their content.

DEFAULT

The attribute DEFAULT sets the start IAE Application that should be called when the root node is requested. Thus in the above example the root node is (alias) /iaeics/. If this is requested a redirect to /iaeics/net/innotecsol/ics/icsmon/index.html is performed.

The IAEICS configuration can contain a authentication configuration which is introduced by the AUTHENTICATE tag as child of the IAEICS tag and determines the authentication provider used for authentication.

				
<IAEICS COMPOUNDID="mycontextid" 
		...
		<AUTHENTICATE TYPE="BASIC" REALM="IOT" PROVIDER="FILE" ANONYMOUSID="iotoperator">
			<FILE FILE="F:\ics\iae\data\user\user.dat"/>
		</AUTHENTICATE>
		...
</IAEICS >
</HANDLER>
</NODE>
				
			

The IAEICS reuses the authentication providers provided by the extension libraries. See for more information regarding the configuration.

The AUTHLOCALAS attribute of the AUTHENTICATE tag is a special attribute to the Internet Application Engine which allows to authenticate user running browsing applications on the local machine to authenticate automatically with the user specified. Thus no login request will be performed. (obsolete - use ANONYMOUSID instead)

The ANONYMOUSID attribute of the AUTHENTICATE tag is a special attribute to the Internet Application Engine which allows to specify a user id that any user browsing will be assigned.

The IAEICS configuration can contain a user access management configuration which is introduced by the UAM tag as child of the IAEICS tag and determines the user access management configuration.

				
<IAEICS COMPOUNDID="mycontextid" 
		...		
		<UAM TYPE="FILE" >
			<FILE DATADIR="F:\ics\iae\data\uam" />
		</UAM>	
</IAEICS >
			
			

The user access management provides authorization objects and roles that can be assigned to the users.

TYPE

The attribute TYPE of the UAM tag specifies the storage mode of the users and roles. Currently only FILE is supported.

FILE

The tag FILE as child of the UAM tag provides the configuration for the selected storage mode FILE. The configuration expects a DATADIR attribute which specifies where the user access management data is stored. The user access management data comprises the users and the roles. Thus the UAM creates in the specified directory two subdirectories "roles" and "users" each containing further subdirectories for the users and roles.

The IAE Compound Configuration comprises:

  • Site Display Name
  • Docu Root
  • Application Packages to be loaded
  • Configuration for each application package
  • 				
    <?xml version="1.0" encoding="utf-8"?>
      <IAECONFIG VERSION="1.0">
    	<SITE>
    	<TEXTS>
    		<SHORTTEXT ID="ENG">MY Display Name</SHORTTEXT>
    		<LONGTEXT ID="ENG">MY Display Name</LONGTEXT>
    		<SHORTTEXT ID="DEU">Mein Anzeige Name</SHORTTEXT>
    		<LONGTEXT ID="DEU">Mein Anzeige Name</LONGTEXT>
    	    </TEXTS>
    	</SITE>
    	<DOCU ROOTNODE="/docu/" />
        <PACKAGES>
    	  <PACKAGE ID="icsmon.ics.innotecsol.net" />
        </PACKAGES>
        <CONFIGS>
    	  <CONFIG ID="icsmon.ics.innotecsol.net" >
    	  ...
    	  </CONFIG>
        </CONFIGS>
      </IAECONFIG>
    				
    			

    SITE

    The SITE tag introduces the site text that is displayed in the home section.

    DOCU

    The DOCU tag introduces the documenation root node which provides the context sensitiv help.

    PACKAGES

    The PACKAGES tag lists the packages that should be loaded each introduced by the PACKAGE tag. Each PACKAGE is identified by its unique ID.

    The library to load is determined by the package id and the repository directory (REPODIR attribute) specified for the respective compound.

    CONFIGS

    An application package can expect a package specific configuration. The package specific configuration is contained in the CONFIG tag as child of the CONFIGS tag, whereas the ID attribute specifies the package that the configuration is assigned to.

    An IAE package is an internet application providing certain services. A package is identified by its identifier, which normally comprises the domain of the provider, the applicatin package and the respective application name.

    ICS provides basic internet applications like base.iae.innotecsol.net or icsmon.ics.innotecsol.net

    The applications are native applications which are stored according to their identifier, thus the storage of the aforementioned applications are

    • <REPODIR>/net/innotecsol/iae/base
    • <REPODIR>/net/innotecsol/ics/icsmon

    Each package consists of a set of subdirectories:

    • fonts
    • libraries
    • resources
    • static
    • template

    fonts

    The fonts directory contains required files for the fonts used within the applications. The fonts directory is served as is by the server.

    libraries

    The libraries directory contains the IAE dynamic libraries that are loaded when a package is configured for a specific compound

    resources

    The resources directory contains the menu resources and the authorization objects as well as predelivered roles.

    static

    The static directory contains the static files for that package like json files, html files or css files. The static directory is served as is by the server.

    template

    The template directory contains the template files for that package. Template files provide the general layout for generated html documents. Template files follow the syntax as described by HTTP Templates whereas the data is provided by the application implementatino.