Robotino Web Interface build

From RobotinoWiki

Build Webpages from Source

Robotino Web Interface consists of the server part and the webpages. The server part, mainly Fcgid, is part of Robotino Daemons. The webpages are based on SmartGWT and are developed as a separate project. The source can be found at SVN Repository.

Note: The compiled webpages are already included in the SVN repository. Therefore if you are not going to make any change, then there is no need to build the project by yourself (can go to Deploy section directly).

Setup Eclipse

  • Install Eclipse IDE for Java EE Developers (http://www.eclipse.org/downloads/).
    Make sure your Java version is at least 7.
    1. Eclipse Kepler  (4.3)
    2. Eclipse Luna    (4.4) Recommended
    3. Eclipse Mars    (4.5)
  • Install Google Plugin for Eclipse (https://developers.google.com/eclipse/docs/download). You can select proper plugin version based on your Eclipse version.
  • When asked for items to install, you need to select the required item (1) Google Plugin for Eclipse and (2) SDKs.
  • Import project to your workspace.
    File > Import > General > Existing Projects into Workspace
    The project is located at folder RobotinoWeb inside the smartgwt source folder.

Build

  • After successful install, there will be a blue G icon on Eclipse IDE.
  • Make sure you select the project at the Project Explorer window on the left side of the IDE.
  • Click the blue G icon and select GWT compile project.

Deploy

  • Set environment variable ROBOTINO_WAR_DIR as the full path of the "war" folder.
  • Then build and install Robotino Daemons as instructed in Build Robotino Daemons. It will copy the whole "war" folder into the server host directory (/var/www/).
  • (NOT recommended) Instead of the two steps above, you could also manually copy the "war" folder into the server host directory (/var/www/).

Development

Before making changes to the source base, please check this guide.

Commit

If changes are made in the source code and recompilation is needed, you need to run this script before committing to repository. The purpose of the script is to delete old HTML produced by previous compilation.