-
Notifications
You must be signed in to change notification settings - Fork 0
Installing and deploying Überdust
The components listed bellow must be installed in your system before deploying Überdust WebApp.
- Java™ Runtime Environment (>1.5.0) & Java™ Development Kit (>1.40).
- MySQL or another RDBMS.
- Apache Maven (>2.0).
- J2EE Application Server (for WebSockets use Resin by Caucho).
- git
Follow the steps bellow to build and deploy the Überdust WebApp.
-
Retrieve the latest code base of Überdust by cloning the github repository.
git clone git://github.com/itm/uberdust.git
. -
Provided that you've chosen MySQL as the preferred RDBMS and it's daemon is running, connect to mysql log in as root and create a database named 'wisedb'. Also create a user granted full privileges on 'wisedb'.
-
Add the following lines to your maven settings file at
~/.m2/settings.xml
. If it does not exist create it. Replace your username/password with the ones that you registered in the previous step.If you choose to use another RDBMS several parts of the configuration bellow might require some changes.<settings> <profiles> <profile> <id>uberdust-wisedb</id> <properties> <wisedb.hibernate.dialect>org.hibernate.dialect.MySQLDialect</wisedb.hibernate.dialect> <wisedb.hibernate.hbm2ddl.auto>update</wisedb.hibernate.hbm2ddl.auto> <wisedb.jdbc.connection.driver_class>com.mysql.jdbc.Driver</wisedb.jdbc.connection.driver_class> <wisedb.jdbc.connection.url>jdbc:mysql://your-database-host/wisedb</wisedb.jdbc.connection.url> <wisedb.jdbc.connection.username>your-username</wisedb.jdbc.connection.username> <wisedb.jdbc.connection.password>your-password</wisedb.jdbc.connection.password> </properties> </profile> </profiles> <activeProfiles> <activeProfile>uberdust-wisedb</activeProfile> </activeProfiles> </settings>
-
Change directory in the uberdust folder or in the uberdust/webapp folder.
-
Run the following command in order to have the project built by maven.
mvn package
. This produces the web application in .war format./webapp/target/uberdust.war
. This procedure might download any extra dependencies the building phase requires. -
Place/Deploy the .war file in the web apps folder. Assuming you use Resin Application server the default application folder is the
/var/www/webapps/
. -
Point your browser at
http://localhost:8080/uberdust/
. If everything went well you should be viewing something like this :
You've now successfully installed the Überdust WebApp. Apparently no data have been imported to the wisedb database yet. In the next section there will be a small guide of how to import a Testbed and it's setup entry using the WiseML package.
After the first installation/deployment of the Überdust WebApp one should provide a testbed. So far there isn't any importing testbed functionality in the Überdust WebApp (plan to be implemented), but you can use several main classes found in the test package of WiseML. Within the Überdust you can distinguish two version of Testbeds based on their provided setup details.
The first version of testbed it's the simple one, which you only have to provide the testbed name, description and a webpage. This version of testbed is mostly used around virtual testbeds. This testbed can be a computer or a computer network, with computers or devices acting as testbed's nodes. The simple version import method does not require any further details, therefore a few of the web app features are disabled (testbed georss map). In order to import a testbed according to this form you can use class eu.wisebed.wisedb.test.AddSimpleTestbed. You can add by running the commands bellow :
$ cd wiseml
$ mvn clean install
$ cd target
$ java -classpath wiseml-1.1-SNAPSHOT-jar-with-dependencies.jar:./test-classes eu.wisebed.wisedb.test.AddSimpleTestbed
Provide the testbed details via the input prompts. After the main class execution the testbed is added in the database. You can view the imported testbed in Überdust WebApp.
![simple](http://img843.imageshack.us/img843/4155/simplec.png) The second version of testbed is the one that the project has been working on closely for a fair amount of time. It is mostly focused around testbeds that use the [testbed-runtime](https://github.com/itm/testbed-runtime) platform for managing it's wireless sensor devices. Besides the details provided for the simple versions , this method requires the web services URLs endpoints for the SNAA,RS and SessionManagement services. The SessionManagement service provides the testbed's setup in a wiseml format which can be parsed ,persisted to the WiseDB and viewed by the Überdust WebApp.In order to import a testbed according to this form you can use class [eu.wisebed.wisedb.test.AddTRTestbed](https://github.com/ichatz/wiseml/blob/master/src/test/java/eu/wisebed/wisedb/test/AddTRTestbed.java). You can add by running the commands bellow :$ cd wiseml
$ mvn clean install
$ cd target
$ java -classpath wiseml-1.1-SNAPSHOT-jar-with-dependencies.jar:./test-classes eu.wisebed.wisedb.test.AddTRTTestbed
Provide the testbed details via the input prompts. After the main class execution the testbed is added in the database. You can view the imported testbed in Überdust WebApp. As you can see the testbed nodes and capabilities have been automatically imported in the database.
![simple](http://img163.imageshack.us/img163/9118/45480685.png) ## Bootstraping the TestbedListenerTODO
Back to Home