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 {CODE()}chmod +x apache-karaf/bin/karaf{CODE}

  • 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. {CODE()}... org.xml.sax, \ org.xml.sax.ext, \ org.xml.sax.helpers, \ com.sun.nio.zipfs, \ org.apache.felix.framework.cache{CODE}

  • Add ''http://maven.vaadin.com/vaadin-addons'' and ''http://www.vaandroid.com:9000/snapshot'' to ''apache-karaf/etc/org.ops4j.pax.url.mvn.cfg'' {CODE()}... 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 {CODE}

  • Start the runtime {CODE()}./apache-karaf/bin/karaf{CODE}

  • Install our feature repos {CODE()}

    repo-add file:../vaandroid-features.xml repo-add file:../pax-features.xml {CODE}

  • Install the vaandroid-core feature {CODE()}> feature:install vaandroid-runtime{CODE}

  • 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. {CODE()}> halt{CODE}