Peter M. Goldstein wrote:

>Stephen,
>
>  
>
>>Just took a peek at the sources attached to your email - I was
>>    
>>
>wondering
>  
>
>>about the following defintion in the .xinfo file:
>>
>>  <services>
>>    <service name="org.apache.avalon.framework.component.Component"
>>version="1.0"/>
>>  </services>
>>
>>This is basically saying the the POP3Server is providing a service
>>interface
>>corresponding to Component.
>>
>>That a little odd because:
>>
>>  (a) it means that a container may proxy this component to 
>>      expose only Component (which is nothing)
>>  (b) a container may complain because your exposing a internal 
>>      interfaces as opposed to a formal work interface
>>  (c) if the real case is that this is a component that does 
>>      not provide a publically accessible services then the 
>>      better approach is to simply drop the <services> element 
>>      from the .xinfo file.
>>
>>I would have though that this component was actually providing a
>>services - but I'm not familiar with POP3 stuff so I'm not in a 
>>position to say what that service interface would be.
>>
>>What do have in mind?
>>    
>>
>
>Basically these lines are leftovers.  I didn't add them, but I didn't
>want to muck with removing them.  I agree with you - they probably
>shouldn't be there.
>  
>

It's safe to remove the <services> declaration - in fact I recommend it 
as the current declaration will probably generate warning in Phoenix 
(that last time I check Phonenix there was a handler that was checking 
from implementation classes but it was comented out probably because it 
was breaking too much stuff).

>Realistically, I don't think we'll be able to run in a non-Phoenix
>container before some of the changes coming with the next revision.  
>

Problems running in alternative containers are not linked to James.  The 
problem is related to Cornerstone (on which James in dependent).
Cornerstone resources depedent on the Phoenix platform include:

  DefaultDataSourceSelector
  AbstractFileRepository
  SSLFactoryBuilder

  (and a couple of the AltRMI classes)

 From memory James in depedent on the AbstractFileRepository (when using 
the default configuration).  I have James running under the Merlin 
container using a slightly patched version of Cornerstone (i.e. purged 
of container depedencies).

The real benefit of the next James revision will be reduced dependency 
on the framework (i.e. Avalon leverage instead of Avalon lock-in by 
migrating to the ServiceManager package).

>So
>I haven't really worried about (b).  But you're right - to generally
>support Avalon containers we need to modify the .xinfo file so we don't
>export internal interfaces.
>

Just drop the <services> element - things will work fine in Phoenix and 
Merlin.  It's perfectly OK to declare a compoent that does not export 
services.

Cheers, Steve.

>
>--Peter
>
>
>
>--
>To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
>For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
>
>
>
>  
>

-- 

Stephen J. McConnell

OSM SARL
digital products for a global economy
mailto:[EMAIL PROTECTED]
http://www.osm.net




--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to