Just for completeness I have attached a copy of the block.xml that works
correctly. I would have thought that thread-impl's block.xml would have
included all the runtime dependencies for the DefaultThreadManager.

cheers
</jima>

> -----Original Message-----
> From: Jim Alateras [mailto:[EMAIL PROTECTED]
> Sent: Monday, November 10, 2003 10:18 PM
> To: 'Avalon Developers List'
> Subject: RE: [merlin] using include directive in block.xml
> 
> Steve,
> 
> I see my problem it looks like I need to include excalibur-pool.
> 
> cheers
> </jima>
> 
> > -----Original Message-----
> > From: Jim Alateras [mailto:[EMAIL PROTECTED]
> > Sent: Monday, November 10, 2003 9:57 PM
> > To: 'Avalon Developers List'
> > Subject: RE: [merlin] using include directive in block.xml
> >
> > >
> > >
> > > Could you post the log using -debug
> >
> > attached
> >
> > >
> > > Quick question - do you really need cornerstone-threads-impl and
> > > excaliobur-thread in your classloader?
> > >
> >
> > you're right I do not need them.
> >
> >
> > cheers
> > </jima>
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
<container name="openim">

   <services>
     <service type="net.java.dev.openim.SimpleMessageRouter">
       <source>SimpleMessageRouter</source>
     </service>
   </services>

   <categories>
     <category name="threads/classloader/scanner" priority="ERROR"/>
   </categories>

   <!--
   Block implementation.
   -->
   <classloader>
     <classpath>
       <repository>
           <!-- OpenIM -->
           <resource id="openim:openim-server-api" version="1.1.1"/>
           <resource id="openim:openim-users-manager-api" version="1.1"/>
           <resource id="openim:openim-users-manager-impl" version="1.1"/>
           
           <!-- XPP3 -->
           <resource id="kxml2:kxml2" version="2.1.8"/>
       
           <!-- Commons -->
           <resource id="commons-lang:commons-lang" version="1.0.1"/>
           <resource id="commons-collections:commons-collections" version="2.1"/>

           <!-- Avalon -->
           <resource id="avalon-framework:avalon-framework-api" version="4.1.5"/>
           <resource id="avalon-framework:avalon-framework-impl" version="4.1.5"/>
           
           <!-- Cornerstone -->
           <resource id="cornerstone-threads:cornerstone-threads-api" version="1.0"/>
           
           <resource id="cornerstone-sockets:cornerstone-sockets-api" version="1.0"/>
           
           <resource id="cornerstone-connection:cornerstone-connection-api" version="1.0"/>
           <resource id="cornerstone-connection:cornerstone-connection-impl" version="1.0"/>
           
           <resource id="cornerstone-scheduler:cornerstone-scheduler-api" version="1.0"/>
           
           <resource id="cornerstone-datasources:cornerstone-datasources-api" version="1.0"/>
           
           <resource id="cornerstone-store:cornerstone-store-api" version="1.0"/>
           <resource id="cornerstone-store:cornerstone-store-impl" version="1.0"/>

           <!-- Excalibur -->
           <resource id="excalibur-pool:excalibur-pool" version="1.2"/>
           <resource id="excalibur-thread:excalibur-thread" version="1.1.1"/>
           <resource id="excalibur:excalibur-collections" version="1.0"/>
           <resource id="excalibur:excalibur-io" version="1.1"/>
           <resource id="excalibur-concurrent:excalibur-concurrent" version="1.0"/>
          
           <!-- james core -->
           <!--
           <resource id="james:mailet-api" version="1.0"/>
           
           <resource id="james:mailet" version="3.0"/>
           <resource id="james:james" version="3.0a1"/>
           -->
           
        </repository>
     </classpath>
   </classloader>


   <include name="threads"
       id="cornerstone-threads:cornerstone-threads-impl"
       version="1.0"/>

   <include name="sockets"
       id="cornerstone-sockets:cornerstone-sockets-impl"
       version="1.0">
      <target path="manager">
        <configuration>
            <server-sockets>
                <factory name="plain"
                    class="org.apache.avalon.cornerstone.blocks.sockets.DefaultServerSocketFactory"/>
                <factory name="secure"
                    class="org.apache.avalon.cornerstone.blocks.sockets.TLSServerSocketFactory" >
                   <ssl-factory>
                    <keystore>
                      <file>conf/keystore</file> <!-- keystore file location -->
                      <password>openim</password> <!-- Key Store file password, only used to check keystore integrity -->
                      <key-password>openim</key-password> <!-- Only required when you need to decrypt a private key -->
                      <type>JKS</type> <!-- Key Store file format, defaults to JKS -->
                      <algorithm>SunX509</algorithm> <!-- Cryptography provider ID, defaults to SunX509 -->
                   </keystore>

                   <!-- SSL protocol to use, defaults to TLS, another possible value is SSL -->
                   <protocol>TLS</protocol>

                 </ssl-factory>

                   <timeout>0</timeout>
                   <!-- With this option set to a non-zero timeout, a call to
                     accept() for this ServerSocket will block for only this amount of
                     time. If the timeout expires, a java.io.InterruptedIOException is
                     raised, though the ServerSocket is still valid. Default value is 0. -->
                   <authenticate-client>false</authenticate-client>
                   <!-- Whether or not the client must present a certificate to
                      confirm its identity. Defaults to false. -->
                 </factory>                    
            </server-sockets>

            <client-sockets>
                <factory name="plain"
                    class="org.apache.avalon.cornerstone.blocks.sockets.DefaultSocketFactory"/>
            </client-sockets>
        </configuration>
      </target>       
   </include>

   <include name="scheduler"
       id="cornerstone-scheduler:cornerstone-scheduler-impl"
       version="1.0"/>

   <include name="datasources"
       id="cornerstone-datasources:cornerstone-datasources-impl"
       version="1.0"/>

   <include name="store"
       id="cornerstone-store:cornerstone-store-impl"
       version="1.0">
      <target path="manager">
        <configuration>
            <repositories>
                <repository class="org.apache.avalon.cornerstone.blocks.masterstore.File_Persistent_Object_Repository">
                    <protocols>
                        <protocol>file</protocol>
                    </protocols>
                    <types>
                        <type>OBJECT</type>
                    </types>
                    <models>
                        <model>SYNCHRONOUS</model>
                        <model>ASYNCHRONOUS</model>
                        <model>CACHE</model>
                    </models>
                </repository>
            </repositories>
        </configuration>       
      </target>
   </include>

   
  <include name="users-manager"
        id="openim:openim-users-manager-impl" version="1.1"/>

        

   
   <component name="IMServer" class="net.java.dev.openim.IMServerImpl" activation="startup"/>
   <component name="ServerParameters" class="net.java.dev.openim.ServerParametersImpl" activation="lazy"/>
   <component name="IMConnectionHandler" class="net.java.dev.openim.IMConnectionHandlerImpl" activation="lazy"/>
   <component name="IMPresenceHolder" class="net.java.dev.openim.IMPresenceHolderImpl" activation="lazy"/>
   <component name="IMRouter" class="net.java.dev.openim.IMRouterImpl" activation="lazy"/>
   <component name="S2SConnectorManager" class="net.java.dev.openim.S2SConnectorManagerImpl" activation="lazy"/>
   <component name="S2SConnector" class="net.java.dev.openim.S2SConnectorImpl" activation="lazy"/>
   <component name="SubscriptionManager" class="net.java.dev.openim.SubscriptionManagerImpl" activation="lazy"/>
   <component name="ModuleManager" class="net.java.dev.openim.ModuleManagerImpl" activation="lazy"/>
   <component name="SimpleMessageRouter" class="net.java.dev.openim.SimpleMessageRouterImpl" activation="lazy"/>
     
   <component name="SessionsManager" class="net.java.dev.openim.session.SessionsManagerImpl" activation="lazy"/>
   <component name="IMClientSession" class="net.java.dev.openim.session.IMClientSessionImpl" activation="lazy"/>
   <component name="IMServerSession" class="net.java.dev.openim.session.IMServerSessionImpl" activation="lazy"/>

   <component name="User" class="net.java.dev.openim.data.jabber.UserImpl" activation="lazy"/>
   <component name="UsersManager" class="net.java.dev.openim.data.UsersManagerImpl" activation="lazy"/>

   <component name="DeferrableListRepositoryHolder" class="net.java.dev.openim.data.storage.DeferrableListRepositoryHolderImpl" activation="lazy"/>
   <component name="PrivateRepositoryHolder" class="net.java.dev.openim.data.storage.PrivateRepositoryHolderImpl" activation="lazy"/>
   <component name="RosterListRepositoryHolder" class="net.java.dev.openim.data.storage.RosterListRepositoryHolderImpl" activation="lazy"/>
   
   <component name="Streams" class="net.java.dev.openim.jabber.StreamsImpl" activation="lazy"/>
   <component name="Error" class="net.java.dev.openim.jabber.ErrorImpl" activation="lazy"/>
   
   <component name="client.Body" class="net.java.dev.openim.jabber.client.BodyImpl" activation="lazy"/>
   <component name="client.Iq" class="net.java.dev.openim.jabber.client.IqImpl" activation="lazy"/>
   <component name="client.Message" class="net.java.dev.openim.jabber.client.MessageImpl" activation="lazy"/>
   <component name="client.Presence" class="net.java.dev.openim.jabber.client.PresenceImpl" activation="lazy"/>
   <component name="client.Priority" class="net.java.dev.openim.jabber.client.PriorityImpl" activation="lazy"/>
   <component name="client.Show" class="net.java.dev.openim.jabber.client.ShowImpl" activation="lazy"/>
   <component name="client.Status" class="net.java.dev.openim.jabber.client.StatusImpl" activation="lazy"/>
   <component name="client.Subject" class="net.java.dev.openim.jabber.client.SubjectImpl" activation="lazy"/>
   <component name="client.Thread" class="net.java.dev.openim.jabber.client.ThreadImpl" activation="lazy"/>
   
   <component name="iq.auth.Digest" class="net.java.dev.openim.jabber.iq.auth.DigestImpl" activation="lazy"/>
   <component name="iq.auth.Password" class="net.java.dev.openim.jabber.iq.auth.PasswordImpl" activation="lazy"/>
   <component name="iq.auth.Query" class="net.java.dev.openim.jabber.iq.auth.QueryImpl" activation="lazy"/>
   <component name="iq.auth.Resource" class="net.java.dev.openim.jabber.iq.auth.ResourceImpl" activation="lazy"/>
   <component name="iq.auth.Username" class="net.java.dev.openim.jabber.iq.auth.UsernameImpl" activation="lazy"/>
   
   <component name="iq.jprivate.Query" class="net.java.dev.openim.jabber.iq.jprivate.QueryImpl" activation="lazy"/>
   
   <component name="iq.register.Password" class="net.java.dev.openim.jabber.iq.register.PasswordImpl" activation="lazy"/>
   <component name="iq.register.Query" class="net.java.dev.openim.jabber.iq.register.QueryImpl" activation="lazy"/>
   <component name="iq.register.Username" class="net.java.dev.openim.jabber.iq.register.UsernameImpl" activation="lazy"/>
   <component name="iq.register.Remove" class="net.java.dev.openim.jabber.iq.register.RemoveImpl" activation="lazy"/>

   <component name="iq.roster.Group" class="net.java.dev.openim.jabber.iq.roster.GroupImpl" activation="lazy"/>
   <component name="iq.roster.Item" class="net.java.dev.openim.jabber.iq.roster.ItemImpl" activation="lazy"/>
   <component name="iq.roster.Query" class="net.java.dev.openim.jabber.iq.roster.QueryImpl" activation="lazy"/>

   <component name="iq.vcardtemp.VCard" class="net.java.dev.openim.jabber.iq.vcardtemp.VCardImpl" activation="lazy"/>

   <component name="server.Body" class="net.java.dev.openim.jabber.server.BodyImpl" activation="lazy"/>
   <component name="server.Error" class="net.java.dev.openim.jabber.server.ErrorImpl" activation="lazy"/>
   <component name="server.Iq" class="net.java.dev.openim.jabber.server.IqImpl" activation="lazy"/>
   <component name="server.Message" class="net.java.dev.openim.jabber.server.MessageImpl" activation="lazy"/>
   <component name="server.Presence" class="net.java.dev.openim.jabber.server.PresenceImpl" activation="lazy"/>
   <component name="server.Priority" class="net.java.dev.openim.jabber.server.PriorityImpl" activation="lazy"/>
   <component name="server.Show" class="net.java.dev.openim.jabber.server.ShowImpl" activation="lazy"/>
   <component name="server.Status" class="net.java.dev.openim.jabber.server.StatusImpl" activation="lazy"/>
   <component name="server.Subject" class="net.java.dev.openim.jabber.server.SubjectImpl" activation="lazy"/>
   <component name="server.Thread" class="net.java.dev.openim.jabber.server.ThreadImpl" activation="lazy"/>
       
   <component name="server.dialback.Result" class="net.java.dev.openim.jabber.server.dialback.ResultImpl" activation="lazy"/>
   <component name="server.dialback.Verify" class="net.java.dev.openim.jabber.server.dialback.VerifyImpl" activation="lazy"/>
   
   <component name="MessageLogger" class="net.java.dev.openim.log.MessageLoggerImpl" activation="lazy"/>
   <component name="MessageRecorder" class="net.java.dev.openim.log.MessageRecorderImpl" activation="lazy"/>
   
</container>

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

Reply via email to