This page describes issues that people have encountered and changes necessary to run JSPWiki on various servers, platforms etc.

mycgiserver implementation.#

I have implemented a test JSPWiki system on mycgiserver. The implemetation is generally 1.5.7, except that I have had to make some non-standard changes because of the peculiarities of mycgiserver.

These include:

  • Use of mycgiserver's logging instead of log4j. Currently the calls seem to work but I can't find a log file anywhere, so I have some work to do here.
  • Repackaging the classes. Mycgiserver only allows you to load classes with path names that match your user ID.
  • Since on mycgiserver all the servers run in the same context, I use a different method to find the .ini file. I use :

appid = getServletContext().getRealPath(getServletConfig().getServletName())).getParent();

instead of:

ServletContext context = config.getServletContext();
        String appid = context.getRealPath("/");
Which means I can run different wikis in different directories in the same context.
  • I have changed the FileSystemProvider so that the file path supplied is relative to the installed directory. Absolute paths on mycgiserver are a pain so this makes configuration easier.
  • I am using a caching provider between the WikiEngine and the FileSytemProvider to cache pages.

I have called the version 1.5.7-mycgi. I think that most of these changes are specific to this implementation, but I thought it might be of interest to other people implementing JSPWiki on public servers.

-- Chris

Cool! Hooray to the power of Open Source :-). Finding the log file in a good way is something I've been wondering about myself as well. Unfortunately, there doesn't seem to be a clean way to do it except perhaps through JNDI, but that just adds a complexity layer.

As for log4j, it should be easy to write a logging module for log4j that uses mycgiserver's logging. Otherwise tracking the changes to JSPWiki main branches can become cumbersome. Doing the package name conversion should be a trivial application of search-and-replace, though.


You are right about changing the package names, that was easy. I think that using log4j may be a problem on mycgiserver because the don't let you load libraries in jar files. Fortunateley they already have oro configured. They say that they will include other standard free libraries by request, but since they have their own logging API I don't think they would see the need for log4j. I may write a log4j look-alike that calls their api, that could be the best way to keep code alligned.

Add new attachment

Only authorized users are allowed to upload new attachments.
« This page (revision-21) was last changed on 16-Apr-2007 19:44 by