J Aaron Farr wrote:
Hello.

I'm having trouble running anything with the new fortress (both the examples
and my own code). Everything gives me this:

I think the problem is in
org.apache.excalibur.source.impl.SourceResolverImpl.java. The latest CVS code
(checked in 5 hours ago) has this:

public void service( final ServiceManager manager )
throws ServiceException
{
m_manager = manager;
m_factorySelector = (ServiceSelector)m_manager.lookup(
SourceFactory.ROLE + "Selector" );
m_defaultFactory = (SourceFactory) m_factorySelector.select( "*" );
if ( !(m_defaultFactory instanceof ThreadSafe) ) {
m_factorySelector.release(m_defaultFactory);
m_defaultFactory = null;
}
}

However, Fortress's ContextManager doesn't put a "*" in the selector, all it
puts is:
selector.put( "resource", resource );
Hmm.  that is a problem.  On two accounts:

In Fortress the default selection is "default".

It stems from no formal specs on what is the default.  We can easily
change what Fortress uses as the "default".

And the Avalon framework DefaultServiceSelector which is the ServiceSelector
called above in the SourceResolverImpl code doesn't handle "*".  It literally
looks for a key "*" which doesn't exist.

Any suggestions?
Either update Fortress to use "*", or update SourceResolverImpl to use
"default".

The real problem is that the code expects contracts that exist in an
*extended* version of ECM, and not any contract that is releasd in
Avalon code.


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

Reply via email to