Google Web Toolkit As Modern Ajax Framework for Development of Rias

Google Web Toolkit As Modern Ajax Framework for Development of Rias

GOOGLE WEB TOOLKIT AS MODERN AJAX FRAMEWORK FOR DEVELOPMENT OF RIAS. Grzegorz Nowak Bachelor’s Thesis April 2011 Degree Program in Information Technology School of Technology DESCRIPTION Author(s) Type of publication Date NOWAK, Grzegorz Bachelor´s Thesis 13.05.2011 Pages Language 54 English Confidential Permission for web publication ( ) Until (X) Title GOOGLE WEB TOOLKIT AS MODERN AJAX FRAMEWORK FOR DEVELOPMENT OF RIAS. Degree Program Information Technology (Data Network Technology) Tutor(s) Peltomäki, Juha Assigned by Bitcomp Oy Abstract Google Web Toolkit is an Ajax based framework for development of interactive web pages – Rich Internet Applications. With additional libraries that add support for handling geographical data it allowed creating a user-friendly experience comparable to most popular web applications in the net. The main objective was to develop an application which allows publishing of spatial data over the web using modern technologies. The most important part was the map widget which should support full user interaction with presented data. The project’s implementation was split into several phases. Analysis of requirements and architecture gave detailed knowledge about the project itself and the tools needed. Prepared development environment and project’s structure was a signal that the implementation of actual features might get started. Displaying data on the map was the subsequent step after implementing the application’s business logic. The result of the process was a fully functional application, entirely compliant with placed requirements. Additionally, the documentation of the project was created to allow faster adaptation of the application to future needs. Developed solution offers great functionality in its category. The products offered by competitive companies were comparable or worse than the presented application. Keywords Google Web Toolkit, Ajax, RIA, Smart Client, GIS, GeoServer, GeoTools, OpenLayers, Maven Miscellaneous 1 CONTENTS 1 INTRODUCTION ........................................................................................................................ 6 2 THEORETICAL BASIS ................................................................................................................. 7 2.1 Ajax ..................................................................................................................................... 7 2.1.1 General Information .................................................................................................. 7 2.1.2 Evaluation .................................................................................................................. 7 2.2 Google Web Toolkit .......................................................................................................... 8 2.2.1 Compatibility with Java and libraries ....................................................................... 9 2.2.2 JavaScript Native Interfaces ................................................................................... 10 2.2.3 Modularity ............................................................................................................... 10 2.2.4 Deferred binding ..................................................................................................... 11 2.2.5 Threads and timers ................................................................................................. 11 2.2.6 GWT-RPC .................................................................................................................. 11 2.2.7 Logging ..................................................................................................................... 13 2.2.8 Localization .............................................................................................................. 13 2.2.9 History support ........................................................................................................ 14 2.2.10 Patterns .................................................................................................................... 14 2.2.11 Testing ...................................................................................................................... 16 2.2.12 Launching and compilation details ........................................................................ 17 2.2.13 Smart GWT ............................................................................................................... 18 2.2.14 Evaluation ................................................................................................................ 19 2.3 Geographic Information System .................................................................................... 19 2.3.1 Open Geospatial Consortium ................................................................................. 19 2.3.2 Web Feature Service ............................................................................................... 19 2 2.3.3 Web Map Service .................................................................................................... 20 2.3.4 GeoServer ................................................................................................................ 20 2.3.5 GeoTools .................................................................................................................. 20 2.3.6 GWT OpenLayers ..................................................................................................... 21 2.4 Development environment ............................................................................................ 21 2.4.1 Integrated development environment .................................................................. 21 2.4.2 Source configuration management ....................................................................... 22 2.4.3 Source quality management................................................................................... 23 2.4.4 Continuous integration ........................................................................................... 24 2.4.5 Component repository management .................................................................... 24 2.5 Maven .............................................................................................................................. 24 2.5.1 Project Object Model .............................................................................................. 25 2.5.2 Build lifecycle ........................................................................................................... 27 2.5.3 Profiles ..................................................................................................................... 28 2.5.4 Archetype ................................................................................................................. 28 2.5.5 Other plug-ins .......................................................................................................... 28 3 PRACTICAL IMPLEMENTATION ............................................................................................. 30 3.1 Bitcomp Oy ...................................................................................................................... 30 3.2 Analysis of the requirements ......................................................................................... 30 3.3 Analysis of the architecture ........................................................................................... 32 3.4 Workspace setup ............................................................................................................ 34 3.5 Project structure ............................................................................................................. 35 3.6 Application layout ........................................................................................................... 40 3.7 Address search ................................................................................................................ 42 3.8 Search .............................................................................................................................. 44 3 3.9 Map .................................................................................................................................. 45 3.10 Documentation ................................................................................................................ 50 4 RESULTS .................................................................................................................................. 51 5 DISCUSSION ............................................................................................................................ 52 REFERENCES .................................................................................................................................... 53 FIGURES FIGURE 1 GWT-RPC class diagram (GWT Dev Guide, 2011.) ....................................................... 12 FIGURE 2 Model View Controller diagram ................................................................................... 15 FIGURE 3 Model View Presenter diagram .................................................................................... 16 FIGURE 4 Maven POM structure (O’Brien T, Casey J & Fox B, 2010.) ........................................ 25 FIGURE 5 Maven POM inheritance diagram (O’Brien T, Casey J & Fox B, 2010.) ...................... 26 FIGURE 6 Use case diagram ..........................................................................................................

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    56 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us