Soma2 v 0.1 README April 2, 2002 Rob Linwood (rcl211@nyu.edu, rob@greenninja.com) I. Intro Soma2 is a Java 1.4-based HTTP server being developed as Open Source. Soma2 is based on the earlier Soma server, but is being re-designed and re-written to take advantage of new APIs in J2SE 1.4. II. Configuring Currently, all configuration information is stored in an XML file. In the current version, the file is `config.xml', though you must give the file name on the command line. The configuration should consist of a series of tags like so: port-number host.domain.tld Soma2-prerelease/0.01 /path/to/files The example config.xml includes a bunch of tags which are commented out. These are to support a feature which does not yet exist. At this time, only one tag is ever actually used, in the future, separate HTTP listeners will be created for each one. The format of the configuration file should be pretty self-explanatory. V. Running Soma2 Assuming you are in the soma2 directory, the following command will run Soma2: java -cp bin -ea soma2.webserver.WebServer config.xml Alternately, Unix users can run the 'soma2' shell script, which does the exact same thing. Soma2 makes use of assertions, which can be controlled via use of the -ea and -da options to the `java' program. I reccomend leaving them on for the meantime so as to catch any errors which may occur. If something does happen, please let me know through email (rcl211@nyu.edu), or a bug report on the SourceForge.Net project page (http://sf.net/projects/soma-server/) IV. What does and doesn't work In this early release, almost nothing works. Right now, all you can do is request an HTML file. That is, if you configure the server properly, load a browser, and enter `http://127.0.0.1:xxx/whatever.html', it should load. There is no support right now for: 1) HTTP errors (404 and whatnot) 2) MIME types (so no files other that HTML) 3) Index support (so no http://127.0.0.1/, rather http://127.0.0.1/index.html) 4) Directory listing 5) Logging 6) CGI 7) Everything else If you see this list and are shocked, keep in mind that the point of this release was just the foundation of the web server. The rest can most likely be ported over from the original Soma with little trouble. V. Everything else To keep up to date on Soma2 development, watch http://soma-server.sf.net/