directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alex Karasulu" <>
Subject [ApacheDS] Embedded http service part2
Date Mon, 21 May 2007 15:58:19 GMT
I've been looking into how to embed the http service into ApacheDS so
can be built for doing DSML, and exposing various other web applications
like for
configuration and self service.

There are some options here that I thought I should discuss on list
especially with the
efforts under way to change the installation layout of the ApacheDS packages
on Linux.

First let me clarify what I plan to do.  I will add the http service using
an embedded Jetty
instance for now.  The Jetty instance will start up after the directory
server's core has
started.  It's startup and configuration will occur in the
ServerContextFactory which also
starts the other protocol services.  Obviously the port used will be a
configurable parameter
with a smart default which can be overriden with a port number property in a

HttpServiceConfiguration bean along with other configuration parameters.

Starting the Jetty server is not all we need to do.  Jetty must be
configured to serve out
various web applications most of which will not be provided out of the box
with the server.
Some may be but we have none right now.  These webapps need to be configured
with Jetty
so it can expose the proper web contexts to be serviced by the web
applications.  These
applications can exist on disk somewhere like in a webapps directory.  I
will make this
directory a configuration parameter.  What I am wondering is whether this
parameter should
be a relative directory relative to the installation base.  Since we're
changing the way the
layout will be this may be an issue.  I guess I can make it so this path can
be relative or

The server can auto configure any webapps that have been unjarred into this
directory so
if a new web application is installed it can be picked up on the next
startup to enable the
webapplication.  Any ideas on what to do here or any thoughts?

Another problem I have here is that some XSDs are needed off the web
when web applications are installed and wind up breaking the startup if
there is no inet
connection.  I can work around this I guess but I have to figure out how.

So here are the properties that I foresee with their smart defaults in the
bean for now:

port (default 8383)
webapps (default ${installHome}/webapps})

** if a relative path is provided to the webapps property then it is
presumed to be
    relative to the installation home.

Also there may be an additional parameter in the StartupConfiguration that
enables or disables
this http service.


View raw message