Mobile application development is a real challenge for developers. A variety of mobile devices and their capabilities make it difficult to develop applications that would go on everything - from basic phones with a small screen to advanced smartphones, controlled by touching the screen.
Two years ago, one of the well-known mobile application developers and services,
Volantis , took a step towards the Open Source community by releasing its Volantis Mobility Server mobile content platform as an open source software product under the GNU GPL v3 license. In total, more than a million lines of code were created, created over seven years of work.
Volantis Mobility Server is a fairly successful attempt to provide us with the ability to write device-independent code, thereby freeing us from embedding presentation logic beyond the average in applications. Creating different presentation templates for different classes of mobile devices, we write a single application and use the capabilities of the system to determine the corresponding presentation on any mobile device. Sounds exciting, doesn't it? Product Description claims the following goodies:
- able to run on many java web application servers and work with many MySQL-compatible DBMS
- The design environment, available in popular integrated development environments like IBM WebSphere and Eclipse, allows developers to create design and content content policies for applications.
- the runtime that determines the device type and the best presentation pattern for the device
- includes a proxy for accessing images, customizing the size and format of the image for a specific device
- database on 6500 devices, with more than 650 attributes on each device
- library of widgets, including AJAX
For us, the openness of Volantis technology means the ability to legally download software, install and create a mobile site on the mobile Internet. If last year the news was
filled with messages that a well-known mobile operator
signed an agreement with Volantis on the introduction of a mobile content management platform, then why shouldn't we pay attention to this product?

Today I will explain how to install Volantis Mobility Server (hereinafter -
VMS ). For those who do not want to repeat my experience, I propose to immediately go to ... a
test server and
look at the demo applications that came with it. Setting up the developer environment and the actual development will not be included in this article, but it is possible that they will be discussed in separate articles.
What do we need?
For VMS, we need a machine running Linux. I used a virtual machine running Debian Lenny.
Before installing the Volantis Mobility Server we need
- DBMS. VMS can work with Oracle, PostgreSQL and MySQL. Forgive Oracle, but in order not to complicate the article, I chose MySQL.
- Java virtual machine. Java, java-machines from Sun, Oracle and IBM are supported. I use the Sun java-machine.
- Web application server. There is total chaos here - VMS works with Apache Tomcat, BEA Weblogic, IBM WebSphere and Jboss AS. Apache Tomcat is most familiar and close to me, so we’ll do the installation of the Volantis Mobility Server with it
For VMS development, you will need:
- Eclipse (3.0, 3.1 or 3.2.2) or IBM Rational Application Developer (6.0 or 7.0)
By the way, development under VMS can be done under Windows.
The most unpleasant surprise for me was that the developers made the
VMS installer as a GUI application. Therefore, in the installation process, we need some kind of windowing environment. I will talk about the minimal solution of this issue using WM OpenBox, but the reader is free to install his favorite KDE or GNOME.
')
Where to get?
VMS 5.1 is available at
http://www.volantis.com/downloads/ . Namely - you need the file mcs_installer-5.1.jar
Documentation can be downloaded at
http://www.volantis.com/documentation/ Documentation is hazy and relatively small.
Everything else will be installed using standard Debian OS tools.
All is ready. Let's get started
Install the required packages:
aptitude install mysql-client-5.0 mysql-server-5.0 libmysql-java sun-java6-jre sun-java6-jdk sun-java6-fonts tomcat5.5 tomcat5.5-admin libtcnative-1
Install the minimalist window environment:
aptitude install xserver-xorg openbox obconf lxpanel thunar wdm
Choose the correct java version:
sudo update-alternatives --config java
sudo update-alternatives --config java_vm
sudo update-alternatives --config javac
In the case of a clean installation, you will receive a message that one version of java is installed and there is nothing more to choose. In the case of two or more java-machines, you will be asked to choose the most suitable java-machine.
Set MySQL password:
mysqladmin -uroot password "VERY_STRONG_MYSQL_PASSWORD"
To run VMS successfully, you need to create the /var/lib/tomcat5.5/conf/policy.d/45volantis.policy policy file:
grant codeBase "file: $ {catalina.home} / webapps / mcs / -" {
permission java.security.AllPermission;
}
We also set the tomcat administrator password in the /var/lib/tomcat5.5/conf/tomcat-users.xml file:
<user username = "tomcat" password = "VERY_STRONG_TOMCAT_PASSWORD" roles = "tomcat, admin, manager" />
Create a database:
mysql -hlocalhost -uroot create database volantis default character set cp1251;
exit;
Configure and run the window environment. All configuration is reduced to adding a panel to autorun. Edit the $ HOME / .config / openbox / autostart.sh file:
#! / bin / sh
lxpanel &
And run the graphical session:
startx
Continue the installation
In the terminal of the graphical session, run the installer:
java -jar ./mcs-installer-5.1.jar &

After that, the graphical installer, which is familiar to users of window systems, is launched and asks a number of usual questions about the license, the installation directory, the component set and a number of settings. This is missing as banal and obvious, I will mention only what may be of interest:
- install all components and install them into $ HOME / MCS
- use Apache Tomcat at localhost: 8080
- Upon completion of the installation, at the 12th step, the installer offers to generate an automatic installation script. It is worth pressing this button. During the next installation, the script is specified by the third parameter (java -jar ./mcs-installer-5.1.jar install.xml &) and the default parameters of the installer are replaced by the ones you specified before.
After installation, copy the web application files and device repository to the Tomcat web application folder:
sudo cp ~ / MCS / webapps / mcs / /var/lib/tomcat5.5/webapps/
sudo cp ~ / MCS / repository / /var/lib/tomcat5.5/webapps/mcs/
sudo chown -R tomcat55: root /var/lib/tomcat5.5/webapps/mcs/
In order for the VMS to use the MySQL connection, you must load the mysql-connector library. This is done by copying the library to WEB-INF / lib:
sudo ln -s /usr/share/java/mysql-connector-java.jar /var/lib/tomcat5.5/webapps/mcs/WEB-INF/lib/
After all these actions, I wondered - what is the VMS installed by a graphical installer? I got the following "contra":
- MCS is placed in a separate folder. Web application is not installed on the application server
- The installer prescribes absolute paths in configs. I had to manually edit ./mcs/WEB-INF/mcs-config.xml, correcting the paths.
If I hadn’t written about it, the reader would never have guessed
If someone knows how to do more correctly - write, I will be glad to your hint.
After these steps, restart tomcat to apply the settings:
sudo /etc/init.d/tomcat5.5 restart
Install, check
Open the
http: // <IP>: 8180 / mcs / projects / welcome / simple_welcome.xdime link in the browser and see that the VMS works:
