A component-based web-application development system

Richárd Jónás

University of Debrecen

Institute of Mathematics and Informatics

jonasr@mail.math.klte.hu

 

Abstract

 

Nowadays the significance of the World Wide Web demands that everyone has to appear in the Internet. It is difficult for a laic to publish infomation to the Web, so informaticians have to establish a system with which web-applications can easily be built. To achieve that we need a flexible, easy-to-use, specialized tool with which the problem can be solved.

In this paper a framework, created by the author, will be introduced, the help of which components of the web-application can be defined, described, compiled and run. In this case the web-application has to be divided into well-separated, reusable parts. Every part can be considered as a component or composition of several components called container. The container can be appear in a web-page, so the container is a component.

Components can be defined with the well-known MVC principle. The model part of a component defines the data of interest, the view part describes how the data can be rendered in the HTML page, the controller implements the business logic. The description of a component is in XML, which is the base of the code-generation. In order to use the components the system will generate Java classes from the XML mentioned. The classes will be compiled, loaded, then they can be identified by an URL. During the integration of components the relationship between the components and the optional inheritance have to be defined.

The requirements against the components can be changed, so the components have to be modified. We can modify the Java classes themselves, in this case the linkage between the components and their descriptions will be destroyed, so this method is not prefered. Secondly, we can modify the XML descriptions. If the last modified date of a component is changed, the system will compile and reload the component again.

At the end the efficiency of the system will be analysed by the implementation of a real problem.