rm -d ms
You can download the latest version from http://sourceforge.net/project/?group_id=2308. The page offers file releases and cvs access.
Click on 'CVS Repository' to browse the cvs tree.
The current version needs an Unix/Linux environment.
This version uses the jsdk2.0 servlet interface. It is tested with Apache and with the jsdk servletrunner. A future document cache may rely on Apache modules. We use Apache/1.3.9 and ApacheJServ/1.1 You can get a copy from http://www.apache.org
The servlet library comes from http://java.sun.com/products/servlet/index.html
We use the Sun 1.2.2 release, but any 1.1 or 1.2 kit should do. You can get a copy from http://java.sun.com.
rm -d ms makes heavy use of the saxon extention element interface.
It relays on saxon 5.3.1 internals.
You can get a copy from
http://users.iclway.co.uk/mhkay/saxon/saxon.zip
We use the Aelfred parser that comes with saxon 5.3.1, but any SAX compliant parser should do. The legacy database interface also needs a DOM parser. We use openxml. If you really want to use the current legacy database interface, you can download it from http://www.openxml.org.
We use xalan_1.0.1 and xerces-1_0_3. You can get a copy from http://xmp.apache.org. The two jar files include an xsl stylesheet processor, a dom parser, a sax parser, the sax library and the dom library.
The Legacy database mapping is out of date. It doesn't even compile and will be replaced with the castor package.
If you want to try out the full featured legacy database mapping, you need the xmldbms package. It can be downloaded from http://www.informatik.tu-darmstadt.de/DVS1/staff/bourret/xmldbms/xmldbms.htm.
We had to apply two patches:
The first one is a workaround for a mysql problem:
xmldbms/Map.java:
rs = meta.getColumns(catalog, schema, tableName, "%");
The second is needed, if the parser doesn't deliver default attributes:
xmldbms/mapfactories/MapFactory_MapDocument.java:
propMap.multiValued = XMLDBMSConst.ENUM_YES.equals(attrValue);
mysql-3.22.21. First choice for development!
This nice database can be downloaded from
http://www.mysql.com.
Installation is easy and it comes with a very friendly copyright, but it doesn't support transactions.
rm -d ms is designed to use any JDBC database, but you have to write a helper class
(see de/pannenleiter/db/brand).
This relase was tested withe the mm mysql driver version 2.0.1. Version 1.2 limits the size of a record to 64K. You can get a copy from http://www.worldserver.com/mm.mysql/
Oracle 8.1.6. It can't be avoided. The oracle interface hasn't been tested in the real world yet.
Instant DB 3.13. A free 100% Java RDBMS. It can be downloaded from http://instantdb.enhydra.org
To run rmdms as a cocoon processor, you need a cocoon 1 installation. We use Cocoon-1.7.4.
rm -d ms with different packages, please share your experiences.
This is a very early release. It runs the samples on my machine, but hasn't been tested with other data on an other computer. You have been warned!
rdbms-0.3.2/config.test database on your machine, edit the database url in
XMLDatabase.samples/server.samples/forum/init creates a test document in the mysql databaseworkbench/run http://localhost:8080/servlet/saxon test forumApJServAction .plxml /servlets/de.pannenleiter.saxon.Engineln -s /xyz/rmdms-0.2 /zyx/htdocs/rmdmsconfig script to the repositories
This version is hardly tested.
rdbms-0.3.2/config.test database on your machine, also edit the database url.samples/server.samples/forum/init creates a test document in the mysql databaseworkbench/run http://localhost:8080/servlet/xmlapache test forumApJServAction .plxml /servlets/de.pannenleiter.xmlapache.Engineln -s /xyz/rmdms-0.2 /zyx/htdocs/rmdmsconfig script to the repositories
If you use xalan and your cocoon 1 installation is up, installing rmdms is easy. But XT support isn't on the todo list and Cocoon 2 bindings hasn't been started yet.
processor.type.rmdms=de.pannenleiter.cocoon.XalanProcessor to your cocoon.properties.cocoon.properties to embedded.propertiesformatter.default = text/xmlprocessor.rmdms.properties=/home/eg/rmdms/samples/embedded.properties to your cocoon.properties.rmdms/config file includes a cocoon configuration for the servletrunner and you find a cocoon.properties and a embedded.properties in the rmdms/samples directory.
If you really want to use it, have a look at the xalan standalone installation above.
The processor hasn't been tested in the real world yet.
The src/Makefile.inc includes all of the configuration data; the name of the installation directory, the names of the libraries and the name of the java compiler.
Edit rmdms-0.3.2/src/Makefile.inc, goto the rmdms-0.3.2 directory and run make.
The makefile will link the apache formatter, the org.xml.sax package and the org.w3c.dom package into the generated jar files.
It depends on the unpacked class files, that are not included in the rm -d ms distribution.
You can extract these package from rmdms.jar.
Go to the rmdms-0.3.2/src directory and run:
rmdms/src > jar xvf ../rmdms.jar org com
If you don't want to compile the saxon interface, the apache interface or the cocoon interface - just remove it from rmdms-0.3.2/Makefile.
To exclude the legacy database interface, you have to remove LegacyDatabase from the all target of de.pannenleiter.db.Makefile and the LegacyContext from the all target of de.pannenleiter.db.expr.Makefile.