james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robert Burrell Donkin" <robertburrelldon...@gmail.com>
Subject Re: Geronimo-JAMES integration
Date Sun, 15 Jun 2008 19:26:04 GMT
On Sun, Jun 15, 2008 at 7:31 PM, David Jencks <david_jencks@yahoo.com> wrote:
> I've been hoping for a Geronimo-JAMES integration since the start of the
> Geronimo project.


i have as well but not quite that long ;-)

> Two fairly recent developments in JAMES have now made
> this a relatively simple task:  the maven build and the spring integration
> code.
> - the maven build enables painless connection between the build systems of
> the two projects, so changes in JAMES get picked up immediately by the
> geronimo plugin under development
> - the spring integration enables a non-avalon expert to construct and start
> a JAMES server

bernd deserves kudos for this

> After a couple days work and fixing a few problems in JAMES I now have a
> geronimo james plugin that runs a james server inside geronimo.
> Instructions:
> 1. Apply patches for JAMES-840, 841, and 842 to james trunk.  Get all the
> jars needed for the build into the private stage repository (JAMES-840).  (I
> realize these instructions are unclear but they are the best I have at the
> moment)
> 2. Build JAMES with maven
> mvn clean install -Plocal
> 3. Build geronimo trunk (I haven't checked to see if sufficiently up to date
> geronimo snapshots are available.  We also have some private repo issues
> that may make at least one local build of geronimo necessary).
> 4. check out
> svn co https://svn.apache.org/repos/asf/geronimo/plugins/james/trunk
> 5. build james plugin
> mvn clean install -Pwith-assembly
> 6. Fire up the sample server
> cd james-server/target
> tar xzf james-server-1.0-SNAPSHOT-bin.tar.gz
> ./james-server-1.0-SNAPSHOT/bin/gsh geronimo/start-server
> I've put the james config files in a geronimo-standard location of
> var/james/config.  I changed the ports so the server would start without
> superuser permissions.  So far I just know the server starts without errors:
> I haven't figure out how to test if it can actually do anything.

send it some mail :-)

> -----------------------------------
> Future directions
> Even in its current state this plugin/integration is only viable if the
> JAMES community
> - works to resolve the issues noted in JAMES-840, 841, 842
> - continues to maintain the maven build

i hope we can do that

fancy moving the code here in the long run?

> Currently there is minimal integration between geronimo and JAMES.   One
> really obvious integration point would be to use geroniimo supplied
> datasources.  However glancing at the code there appears to be a certain
> amount of fishing for configuration rather than dependency injection.

JAMES is mostly IoC but the injection is hard to understand and inconsistent

(one of my motivations for trying to split JAMES into reusable
components is to address this)

> I'm wondering whether there is any interest in moving to JPA based database
> access, and whether this would be significantly harder than just changing
> the datasource source.  Obviously this would imply moving JAMES to java 5.

(i was planning to add JPA-based data access for IMAP once i get round
to sorting out the data access layer)

not necessarily: adding new JPA based database acccess is very doable.
a new java 5 module for JPA would be fine.

IMHO it would clean and clearer to implement this as a separate
component dependent only on the API (but would need some changes)

> Another issue I came across is use of com.sun mail classes (I started by
> trying to use the geronimo mail provider before I understood why the stage
> repo wasn't working for me).  Is this intentional?


>  Are you interested in also supporting the geronimo mail implementation?

i would prefer to use geronimo (i find the sun implementation slow and
buggy but then again, i'm not a javamail fan) but others prefer sun

> Finally I came across some comments that DNS is needed (as you can probably
> tell I know almost nothing about mail).

depends on the protocol. AIUI SMTP requires correct that DNS is set up
appropriate for the machine.

>  I wondered if any thought had been
> given to using apacheds in-vm for this.

(hopefully one of the SMTP experts will jump in an answer this)

- robert

To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org

View raw message