Files
i2p.i2p/apps/routerconsole
zzz 92b9d0a996 First cut at migrating to Jetty 6 and prep for using an external
Jetty 6 package.

- Add several jars from the Jetty 6 distribution
- Update jetty.xml
- Add context XML files
- Update WorkingDir to migrate the content XML files
- Update RouterConsoleRunner and LocaleWebAppHandler
- Remove all old Jetty 5.1.15 local mods;
  this will break Seedless using a custom Server() constructor
- Update I2PRequestLog to be a mod of NCSARequestLog from 6.1.26
- Put I2PRequestLog in its own jar
- Copy MultiPartRequest and other required classes from Jetty 5.1.15
  and add it to susimail, as the replacement MultiPartFilter in
  Jetty 6 is difficult to migrate to, and does not support content-type
- Update i2psnark for Jetty 6
- Disable i2psnark RunStandalone, unused and instantiated Jetty 5
- Fix up all webapp build.xml to reference new jars

Not yet working: Plugin/webapp run detection and stopping, eepsite CGI
Not well tested: Plugins, classpaths, webapps
2011-12-23 00:56:48 +00:00
..

The routerconsole application is an embedable web server / servlet container.
In it there is a bundled routerconsole.war containing JSPs (per jsp/*) that
implement a web based control panel for the router.  This console gives the user
a quick view into how their router is operating and exposes some pages to 
configure it.

The web server itself is Jetty [1] and is contained within the various jar files
under lib/.  To embed this web server and the included router console, the 
startRouter script needs to be updated to include those jar files in the 
class path, plus the router.config needs appropriate entries to start up the
server:

  clientApp.3.main=net.i2p.router.web.RouterConsoleRunner
  clientApp.3.name=webConsole
  clientApp.3.args=7657 0.0.0.0 ./webapps/

That instructs the router to fire up the webserver listening on port 7657 on
all of its interfaces (0.0.0.0), loading up any .war files under the ./webapps/
directory.  The RouterConsoleRunner itself configures the Jetty server to give
the ./webapps/routerconsole.war control over the root context, directing a
request to http://localhost:7657/index.jsp to the routerconsole.war's index.jsp.
Any other .war file will be mounted under their filename's context (e.g. 
myi2p.war would be reachable at http://localhost:7657/myi2p/index.jsp).

[1] http://jetty.mortbay.com/jetty/index.html