Creating A Runtime Container

The Vaandroid runtime container allows Vaandroid plugins to be easily deployed on any machine.

Steps

  • Download Karaf from http://karaf.apache.org/download.html

  • Unzip Karaf and rename the directory to apache-karaf

  • Make karaf executable

    chmod +x apache-karaf/bin/karaf
  • Export ''com.sun.nio.zipfs'' and ''org.apache.felix.framework.cache'' from the system bundle (located in ''apache-karaf/etc/jre.properties''). You can add this these to the end of the file.

    ...
    org.xml.sax, \
    org.xml.sax.ext, \
    org.xml.sax.helpers, \
    com.sun.nio.zipfs, \
    org.apache.felix.framework.cache
  • Add ''http://maven.vaadin.com/vaadin-addons'' and ''http://www.vaandroid.com:9000/snapshot'' to ''apache-karaf/etc/org.ops4j.pax.url.mvn.cfg''

    
    ...
    http://repository.springsource.com/maven/bundles/external@id=spring-ebr-repository@snapshots@noreleases, \
    http://maven.vaadin.com/vaadin-addons, \
    http://www.vaandroid.com:9000/snapshot

* Start the runtime

./apache-karaf/bin/karaf


* Install our feature repos

repo-add file:../vaandroid-features.xml repo-add file:../pax-features.xml


* Install the vaandroid-core feature

feature:install vaandroid-runtime

  • You can now go to http://localhost:8181 in your web browser.
    The system will be waiting for a login provider and a branding provider.

  • Add the ''allow-all login provider'' and ''branding provider'' to the apache-karaf/deploy directory.
    This provider will accept any username/password combination and log the user in as guest.

  • Login You will see the Vaandroid Launcher, but no launchable activities have been installed.

  • Install The HelloWorld Plugin Move the HelloWorld plugin into the deploy directory. After a few seconds, the activity will be displayed.

To stop ''Vaandroid Server'', type ''halt'' into the terminal.

> halt