We've been working RapidOSS and RapidInformer for quite some time now. Yet, it would have been inconceivable to bring a product into market in such a short time if it wasn't for number of high quality components available in the public domain.
I wanted to talk about some of these components/products that we have leveraged in developing RapidOSS and the rational for choosing/using these components.
One of the key design goals we've had for RapidOSS and RapidInformer has been developing a product that is extremely easy to implement. We wanted to be able to have anyone bring the solution up and running within 15 minutes, regardless of the server platform.
In my experience, when a software package has dependencies to other software, it is not realistic to have a quick install process. There are too many things that can go wrong, too many variables for us to test, anticipate and handle. Different versions of the software, server platform, application server etc. can cause problems. It also means that the potential
users of our products need to become familiar/comfortable with these software components to get our software up and running. That's no good. We do not want the potential customers struggle installing the software. It should be a straight forward, painless process.
For web applications, the most common dependencies are (naturally) a web/application server and a database. RapidOSS includes both of these components, so our users don't have to figure out how to install them, and can focus on getting RapidOSS up and running.
Jetty is a full features web/application server written entirely in java, hence works on any platform that has a JVM. RapidOSS runs on the embedded Jetty server, so the user does not have to mess with web server/application installation, version conflicts etc. at all. The only configuration is to change the default port in a configuration file, if necessary. And since it is written entirely in Java, we don't have to do anything different in different platforms, it just works. We have control over which version and test on that version extensively instead of trying to support multiple web/application servers on different platforms. Jetty is chosen at least as the default web/application server for many products and frameworks so what we're doing is not by any means ground breaking. We are just grateful to
have such high quality component available to us. My thanks to everyone who has worked on Jetty.

