Design and Implementation of Intermediate Representation and Framework for Web Applications

Chapter
Part of the Lecture Notes in Electrical Engineering book series (LNEE, volume 125)

Abstract

By the spread of Rich Internet Applications (RIAs),Web applications are becoming more convenient to use. Although there are many RIA technologies such as Ajax, JavaFX, Flex and Silverlight, by far there seems no common technique for specifying RIAs. The absence of the technique is considered inconvenient, especially when using RIAs in business. Hence, currentWeb applications heavily depend on the technology they use. Therefore, when the technology becomes obsolete, developers have to redevelop their applications by using other RIA technologies. Transforming an existing RIA to another through an intermediate representation is one of the solutions for it, but few attempts seem to have been made by this method. In this paper, we realize this, especially focusing on UI, by using an intermediate representation and a framework. The intermediate representation we propose here is in an XML format and provides an easy way of specifying a RIA for developers. The UI information is categorized into three parts: an widget part, a style part and a behavior part, which are held in a DOM tree, a CSSOM-like tree and an abstract syntax tree for ECMAScript, respectively. Moreover, the framework provides a default implementation in Java so that developers can easily extend it, if necessary. We show that the proposed method can solve the problem through an example of transforming a Web application from DHTML to JavaFX.

Keywords

Intermediate Representation Root Element Abstract Syntax Tree Document Object Model Apache Software Foundation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
  2. 2.
    Apache Software Foundation: Velocity, http://velocity.apache.org/
  3. 3.
    Ecma International: ECMAScript Language Specification 3rd edn. (1999), http://www.ecma-international.org/publications/standards/ecma-262.htm
  4. 4.
    Fraternali, P., Comai, S., Bozzon, A.: Engineering Rich Internet Applications with a Model-Driven Approach. ACM Transactions on the Web 4(2) (2010)Google Scholar
  5. 5.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.M.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley Professional (1994)Google Scholar
  6. 6.
    Marchetto, A., Ricca, F.: Transforming a Java Application in an Equivalent Web-Services Based Application: Toward a Tool Supported Stepwise Approach. Web Site Evolution (2008)Google Scholar
  7. 7.
    Microsoft: Silverlight, http://www.microsoft.com/silverlight/
  8. 8.
    Mozilla Foundation: XUL, https://developer.mozilla.org/En/XUL
  9. 9.
    Oracle: JavaFX, http://javafx.com/
  10. 10.
    Ping, Y., Kontogiannis, K., Lau, T.C.: Transforming Legacy Web Applications to the MVC Architecture. In: Eleventh Annual International Workshop on Software Technology and Engineering Practice (2004)Google Scholar
  11. 11.
  12. 12.
    W3C: Document Object Model (DOM) Level 2 Core Specification, http://www.w3.org/TR/DOM-Level-2-Core/
  13. 13.
    W3C: Extensible Markup Language (XML) 1.1, 2nd edn., http://www.w3.org/TR/xml11/
  14. 14.
    W3C: Modularization of XHTML, http://www.w3.org/TR/xhtml-modularization/
  15. 15.
  16. 16.

Copyright information

© Springer-Verlag GmbH Berlin Heidelberg 2012

Authors and Affiliations

  • Tomokazu Hayakawa
    • 1
  • Shinya Hasegawa
    • 1
  • Teruo Hikita
    • 1
  1. 1.Meiji UniversityMeijiJapan

Personalised recommendations