Hi David,

finally I was able to get it up and running. Thank you very much, both for your effort and the instructions you gave here on the list. You are right -- not that convenient yet. But with a repository containing a working ApacheDS plugin publicly available, the procedure/concept looks great to me.

Here are some comments and information inline, of what I did, if someone else plans to try out. The description of David is sufficient, but I faced some minor problems -- probably due to my version selection, so I document them here.

David Jencks wrote:
Here's what to do:

geronimo: get 2.0 or build server/trunk or server/branches/2.0

plugin: check out and build plugins/directory/trunk (for apacheds 1.5.1-SNAPSHOT) or plugins/directory/branches/2.0 (for apacheds 1.5.0).

I decided to use my already installed G 2.0-M6 and the 1.5.1-SNAPSHOT, i.e. I checked out from

https://svn.apache.org/repos/asf/geronimo/plugins/directory/trunk

Building via "mvn install" worked just fine, although it took some time to download the impressive number of dependencies.

One problem I had: A unit test failed due to another ApacheDS running on my machine port 10389 -- the unit test planned the same. So stop your ApacheDS, if it listens to 10389 before building the plugin.


make your local maven repo look like a geronimo plugin repo: When you built the plugin, maven will have copied a file geronimo-plugin.xml to directory/target/classes/META-INF/geronimo-plugin.xml. Copy this file to ~/.m2/repository/geronimo-plugins.xml and edit it so it looks like:

It was not sufficient to copy the file, because G seems to expect something called "geronimo-plugins.xml" (with an "s") in the repository. I took the one from
http://geronimo.apache.org/plugins/geronimo-2.0/
as a template and copied my plugin information from geronimo-plugin.xml (see above) into the file.

I had to add this line

<geronimo-version>2.0-M6</geronimo-version>

to the plugin entry, just as David mentions below ("supported versions").

ok... now for the fireworks :-)
Start geronimo and look in the admin console under "plugins". Click the "add new plugin repository" link and add the file:// url for your local maven repo: for me it's file://Users/david/.m2/repository

G was not able to accept my repo with a "file://" protocol. After serving the repository with a local httpd, everything worked fine. Perhaps the reason is my Windows environment; I had a blank in the .m2 path (not a good plan at all).


Now click the Search For Plugins button and you should get a page with the directory plugin shown. If not there might be something wrong with the "supported versions" in the geronimo-plugin.xml, try editiing it to whatever version you are using. Click the install buttons at the bottom of the pages until if finally installs....

The rest worked like described, I had to do the 2.0 extra work as depicted by David below.

On branches/2.0 and trunk the plugin should install and start without problems. You can check by looking at the bottom of the System Modules page. On 2.0, you have to do some more work.

from the root of your geronimo install:
mkdir var/directory
cp repository/org/apache/geronimo/plugins/directory/2.0-SNAPSHOT/directory-2.0-SNAPSHOT.car/META-INF/server.xml var/directory/server.xml

Now you should be able to start the plugin from the system modules page in the admin console.

I checked that it was working ok by using LDAP Studio to connect: I could see some plausible entries and appeared to be able to add and edit entries, so I figured it was working properly.

Another option is to use the LDAP Viewer in the G admin console's Debug views. This works fine as well.

Thanks again David. Great work!

Greetings,
    Stefan

Reply via email to