From the main application actions bar open Modules of the project. One of the most important requirements on OpenWMS.org is modularization. That's why we often talk about modules either in the frontend part of the application or in the service layer (backend). An Application Module is a defined set of views, services and domain objects that belong logically together. Some modules have dependencies to other modules where they operate on.
-> to display the Module Management view. On this screen a System Operator or Project Engineer defines allOn the main Module Management View press the button
to define a new
Application Module. Now you have to enter a minimum set of information
that is necessary to locate and run the Application Module. Required
fields like the Modulename and the
URL are marked with a red asterisk and must be
provided to start up the module correctly. After you have done your
changes click
to save the entries in the database.
Table 7.1. Definition of Module properties
Input field | Description |
---|---|
Modulename | The module name is an unique identifier of the Module within the application. Please provide a proper name that describes the Module in a short term. For example: COMMON Module |
URL | The URL is mandatory to locate and load the Module. It is not mandatory that a Module is shipped with the application, it can also be loaded from another application domain. If the Module is packaged with the application, just use the filename of the Shockwave (SWF) file, e.g. org.openwms.common.client.flex.swf, including the file extension (.swf). If your Module is stored in a different application domain like the main application than you have to provide the full URI (unique resource identifier), e.g. http://www.myCompany.com/openwms/org.openwms.common.flex.client.swf. Under these circumstances please notice that the application security policy must allow access to your foreign domain (see Crossdomain configuration) |
Description | The description field is not required, but you should provide short information about the Application Module, e.g. for what it is needed and what dependencies it has to other modules. |
Load on Startup | Check this field if you want to start your Module the next time the application starts up. |
In the same view you can do changes on existing module
definitions. Just choose the Application Module you want to change and
the detail information of the chosen module is shown in the text fields
next to the list of modules. Change the properties and press
Save to write the
information to the persistent storage. Be aware of uniqueness of the
Modulename and the URL
identifier.
Removing an existing module can be done that way too, just choose
the module to delete and press the Delete
button.
Your Changes will take effect the next time you reload the application.
To try out if a module is able to be loaded on startup, you should
try to load it manually before. Just select the Module you want to load
and press the Load
button. If the module was already loaded, the buttons icon changed
and is used to
Unload. Pressing the Unload
button
unloads the current
selected module. After an Application Module was successfully loaded
into the application domain you should notice that the main application
actions bar is populated with a couple of menu items provided by the new
module. What you can't recognize so far is that the list of views was
updated, too. After unloading a module, the main application actions bar
is reorganized and only show the menu items of all currently loaded
modules.