Issue 3, 2015
NaturalONE automates Natural for AJAX runtime settings
Share Web applications among developers or reviewers with a simple click. Learn how to develop self-configured Web applications in NaturalONE projects.
Agile development demands automation
Web applications, including Natural for AJAX applications, are composed of multiple parts:
- Web pages of the application
- Styling specifications for the Web pages
- Configuration settings for the framework
Agile development methods and continuous delivery requirements demand that versions of a Web application be shared among developers or reviewers with a simple click. The application should run and development proceed without requiring anyone to address the configuration settings of the application.
NaturalONE projects contain all parts of a Natural for AJAX application. This ensures that the Natural for AJAX runtime uses the specific configuration settings of the application established in the NaturalONE development environment when deployed into corresponding test or production environments outside of NaturalONE.
When upgrading the Natural AJAX runtime in NaturalONE (integrated development environment), the Web application will run with the newly installed runtime without you having to reconfigure the runtime for the specific needs of the application. With just a click, you can also package your application and deploy it to a production or test environment without having to manually copy any additional configuration settings. You also do not have to reconfigure the Natural for AJAX runtime settings in your destination environment after deployment.
Parts of a Web application
NaturalONE supports self-configuration of Natural for AJAX applications. This is accomplished by ensuring the NaturalONE Project contains all elements of the Web application.
The Web application part of a Natural for AJAX application consists of:
- Multiple Web pages
- Style sheets to fine-tune the rendering of the Web pages
- Configuration setting
The Web application may also include:
- Specific Web layout templates
- Custom controls
- Other Web resources such as images or plain HTML pages
Since all these pieces are required to develop and/or run the Web application with the correct visual rendering, you need to add each of these elements into your NaturalONE project(s).
The project structure contains everything
When creating a NaturalONE project for Natural for AJAX development, User Interface (UI) components are created. NaturalONE automatically creates predefined folders for the basic parts of your Web application, as shown in Figure 1.
Figure 1: NaturalONE automatically creates subfolders for your Web application UI components.
NaturalONE tools support the development of the files in these predefined folders and the packaging of the developed files for deployment. For example, the “Style Sheet Editor” helps you develop application-specific style sheets in the styles folder. You can, of course, add more subfolders for capturing additional resources like images. All subfolders are automatically packaged with your Web application.
The most important predefined subfolders are:
- cisconfig – AJAX configuration files for development and runtime
- multilanguage - Internationalization support based on text ids
- styles - Cascading Style Sheets (*.css) for styling the user interface
- xml - Natural for AJAX page layouts
Natural for AJAX supports multiple kinds of configuration settings. Some configuration settings are used at development time when building the NaturalONE project. For example, you can customize the rendering of FIELD controls with popup icons using the setting “takeoutfieldpopupicon”, as shown in Figure 2.
Figure 2: Customize FIELD controls using pop-up icons.
Other settings are only used at runtime. Examples include: 1) “defaultcss” which sets a specific style sheet for the complete application; and 2) “valuehelpkeys” which defines the keys for opening value help.
To make your Web application self-configured, you will need to add your specific configuration settings to one of the UIs and enable it in the properties of your UI, as shown in Figure 3.
Figure 3: Self-configure your Web application by enabling specific configuration settings associated with your UI.
The UI is then marked correspondingly in the file folders, as shown in Figure 4.
Figure 4: The UI is marked in corresponding file folder.
Once you have enabled the cisconfig.xml settings in a UI, the UI will ensure that the settings are used in the builders and Natural for AJAX runtime. If, for example, you check-in your complete project into a version control system, everyone who checks out the project will automatically have the correct Natural for AJAX runtime settings in his local environment. This also means that if you are upgrading your development environment to a new Natural for AJAX runtime, the UI will ensure that these settings are automatically enabled in the newly installed Natural for AJAX runtime.
Styles and other resources
NaturalONE supports specific tools for developing styles, layout pages and multi-language files. When using the predefined folders, everything for development and runtime is contained in your UI in a self-configured way. You can also add additional own subfolders for your specific resources. All subfolders will be contained in the Web application when creating deployment files using the Natural War Ant deployment. To find the Natural War Ant deployment, simply right-click on the project, select New-Other-Natural and “Deploy Natural War Ant” as shown in Figure 5.
Figure 5: Deploy Natural War Ant to ensure all sub-folders are contained in the Web application.
Package and deploy a Web application
Deployment packages for production environments also typically contain additional settings or files such as: 1) a license file for a production environment; 2) specific timeout; or 3) memory settings for a specific application server. For these kinds of settings, you can make your Web application self-configure. NaturalONE generates corresponding ant deployment files that may contain these settings allowing you to generate your ant file only once. Since the settings are contained in your NaturalONE project, they will automatically add all the specific configuration settings whenever you build a deployment file. The result is a self-configured Web application archive ready to be deployed into your production and/or test environments, as illustrated in Figure 6.
Figure 6: Self-configured Web applications enable agile development from start to finish.
Meet the demands for agile development and continuous delivery by leveraging the support of self-configured Web applications in NaturalONE. Use the predefined NaturalONE project structure and add all the parts of your Web application into your NaturalONE project(s). Then sit back and share your application with ease while the application automatically applies the correct Natural for AJAX runtime settings.