AnsweredAssumed Answered

[Résolu] lancement serveur tomcat virtuel

Question asked by anarcotik on Jun 20, 2008
Latest reply on Jun 26, 2008 by michaelh
Bonjour à tous,
cela fait plusieurs temps que mon équipe se penche sur un petit problème que nous rencontrons. Il s'agit du lancement du serveur virtuel tomcat voila ce qui se produit.

A priori, le serveur virtuel tomcat a besoin que Alfresco soit déjà lancé. J'exécute donc la commande suivante :

./alfresco.sh start
et dans la foulée je lance le serveur virtuel avec la commande suivante :

./virtual_alf.sh start
j'obtiens donc les affichages successifs suivants :

Using CATALINA_BASE:   /usr/share/alfresco/tomcat
Using CATALINA_HOME:   /usr/share/alfresco/tomcat
Using CATALINA_TMPDIR: /usr/share/alfresco/tomcat/temp
Using JRE_HOME:       /var/www/jdk1.5.0_11/
et

Using CATALINA_BASE:   /usr/share/alfresco/virtual-tomcat
Using CATALINA_HOME:   /usr/share/alfresco/virtual-tomcat
Using CATALINA_TMPDIR: /usr/share/alfresco/virtual-tomcat/temp
Using JRE_HOME:       /var/www/jdk1.5.0_11/

jusque la tout va bien, seulement lorsque j'essaye d'accéder avec alfresco à la pré visualisation de mon site, je vois bien que le serveur virtuel n'est pas lancé, d'ailleur la commande suivante me le confirme :

ps aux | grep tomcat
le tomcat d'alfresco est lancé mais pas le virtuel.

je regarde donc dans mes logs, pas d'erreur.

Cependant, si je fais EXACTEMENT la même manipulation mais en attendant que alfresco ai terminé de se lancer (ie: je peux accéder à la page de login) le serveur virtuel se lance correctement.

Voici les deux logs différent de catalina.log pour le serveur virtuel

1er cas : je lance le script juste apres le script d'Alfresco

20 juin 2008 11:24:08 org.apache.catalina.core.AprLifecycleListener lifecycleEvent
INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /var/www/jdk1.5.0_11/jre/lib/i386/clie
nt:/var/www/jdk1.5.0_11/jre/lib/i386:/var/www/jdk1.5.0_11/jre/../lib/i386
20 juin 2008 11:24:08 org.apache.coyote.http11.Http11BaseProtocol init
INFO: Initialisation de Coyote HTTP/1.1 sur http-8180
20 juin 2008 11:24:08 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 1894 ms
20 juin 2008 11:24:09 org.apache.catalina.core.StandardService start
INFO: Démarrage du service Catalina
20 juin 2008 11:24:09 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/5.5.23
20 juin 2008 11:24:09 org.springframework.core.CollectionFactory <clinit>
INFO: JDK 1.4+ collections available
20 juin 2008 11:24:09 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
INFO: Loading XML bean definitions from URL [file:/usr/share/alfresco/virtual-tomcat/conf/alfresco-virtserver-context.xml]
20 juin 2008 11:24:10 org.springframework.context.support.AbstractRefreshableApplicationContext refreshBeanFactory
INFO: Bean factory for application context [org.springframework.context.support.FileSystemXmlApplicationContext;hashCode=8856448]: org.springframework.beans.factory.support.Defa
ultListableBeanFactory defining beans [virtserver-properties,avmReauthenticatingAdvisor,reauthenticatingAdvice,clientTicketHolder,authenticationService,avmRemote,avmRemoteTransp
ort,avmRemoteTransportRaw,attributeService,attributeServiceTransport,attributeServiceTransportRaw,jndiInfoBean,virtServerInfo,virtServerMBeanServer,virtServerRegistry,serverConn
ector,virtServerExporter,virtWebappRegistry,cacheControlInfo]; root of BeanFactory hierarchy
20 juin 2008 11:24:10 org.springframework.context.support.AbstractApplicationContext refresh
INFO: 19 beans defined in application context [org.springframework.context.support.FileSystemXmlApplicationContext;hashCode=8856448]
20 juin 2008 11:24:10 org.springframework.core.io.support.PropertiesLoaderSupport loadProperties
INFO: Loading properties file from URL [file:/usr/share/alfresco/virtual-tomcat/conf/alfresco-shared.properties]
20 juin 2008 11:24:10 org.springframework.core.io.support.PropertiesLoaderSupport loadProperties
INFO: Loading properties file from URL [file:/usr/share/alfresco/virtual-tomcat/conf/alfresco-virtserver.properties]
20 juin 2008 11:24:10 org.springframework.context.support.AbstractApplicationContext initMessageSource
INFO: Unable to locate MessageSource with name 'messageSource': using default [org.springframework.context.support.DelegatingMessageSource@84da23]
20 juin 2008 11:24:10 org.springframework.context.support.AbstractApplicationContext initApplicationEventMulticaster
INFO: Unable to locate ApplicationEventMulticaster with name 'applicationEventMulticaster': using default [org.springframework.context.event.SimpleApplicationEventMulticaster@39
ab89]
20 juin 2008 11:24:10 org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
INFO: Pre-instantiating singletons in factory [org.springframework.beans.factory.support.DefaultListableBeanFactory defining beans [virtserver-properties,avmReauthenticatingAdvi
sor,reauthenticatingAdvice,clientTicketHolder,authenticationService,avmRemote,avmRemoteTransport,avmRemoteTransportRaw,attributeService,attributeServiceTransport,attributeServic
eTransportRaw,jndiInfoBean,virtServerInfo,virtServerMBeanServer,virtServerRegistry,serverConnector,virtServerExporter,virtWebappRegistry,cacheControlInfo]; root of BeanFactory h
ierarchy]
20 juin 2008 11:24:10 org.springframework.beans.factory.support.DefaultSingletonBeanRegistry destroySingletons
INFO: Destroying singletons in {org.springframework.beans.factory.support.DefaultListableBeanFactory defining beans [virtserver-properties,avmReauthenticatingAdvisor,reauthentic
atingAdvice,clientTicketHolder,authenticationService,avmRemote,avmRemoteTransport,avmRemoteTransportRaw,attributeService,attributeServiceTransport,attributeServiceTransportRaw,j
ndiInfoBean,virtServerInfo,virtServerMBeanServer,virtServerRegistry,serverConnector,virtServerExporter,virtWebappRegistry,cacheControlInfo]; root of BeanFactory hierarchy}

2ème cas : j'attends qu'alfresco soit lancé pour exécuter le script de démarrage du serveur virtuel

20 juin 2008 11:27:56 org.apache.catalina.core.AprLifecycleListener lifecycleEvent
INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /var/www/jdk1.5.0_11/jre/lib/i386/clie
nt:/var/www/jdk1.5.0_11/jre/lib/i386:/var/www/jdk1.5.0_11/jre/../lib/i386
20 juin 2008 11:27:56 org.apache.coyote.http11.Http11BaseProtocol init
INFO: Initialisation de Coyote HTTP/1.1 sur http-8180
20 juin 2008 11:27:56 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 659 ms
20 juin 2008 11:27:57 org.apache.catalina.core.StandardService start
INFO: Démarrage du service Catalina
20 juin 2008 11:27:57 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/5.5.23
20 juin 2008 11:27:57 org.springframework.core.CollectionFactory <clinit>
INFO: JDK 1.4+ collections available
20 juin 2008 11:27:57 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
INFO: Loading XML bean definitions from URL [file:/usr/share/alfresco/virtual-tomcat/conf/alfresco-virtserver-context.xml]
20 juin 2008 11:27:57 org.springframework.context.support.AbstractRefreshableApplicationContext refreshBeanFactory
INFO: Bean factory for application context [org.springframework.context.support.FileSystemXmlApplicationContext;hashCode=8856448]: org.springframework.beans.factory.support.Defa
ultListableBeanFactory defining beans [virtserver-properties,avmReauthenticatingAdvisor,reauthenticatingAdvice,clientTicketHolder,authenticationService,avmRemote,avmRemoteTransp
ort,avmRemoteTransportRaw,attributeService,attributeServiceTransport,attributeServiceTransportRaw,jndiInfoBean,virtServerInfo,virtServerMBeanServer,virtServerRegistry,serverConn
ector,virtServerExporter,virtWebappRegistry,cacheControlInfo]; root of BeanFactory hierarchy
20 juin 2008 11:27:57 org.springframework.context.support.AbstractApplicationContext refresh
INFO: 19 beans defined in application context [org.springframework.context.support.FileSystemXmlApplicationContext;hashCode=8856448]
20 juin 2008 11:27:57 org.springframework.core.io.support.PropertiesLoaderSupport loadProperties
INFO: Loading properties file from URL [file:/usr/share/alfresco/virtual-tomcat/conf/alfresco-shared.properties]
20 juin 2008 11:27:57 org.springframework.core.io.support.PropertiesLoaderSupport loadProperties
INFO: Loading properties file from URL [file:/usr/share/alfresco/virtual-tomcat/conf/alfresco-virtserver.properties]
20 juin 2008 11:27:57 org.springframework.context.support.AbstractApplicationContext initMessageSource
INFO: Unable to locate MessageSource with name 'messageSource': using default [org.springframework.context.support.DelegatingMessageSource@84da23]
20 juin 2008 11:27:57 org.springframework.context.support.AbstractApplicationContext initApplicationEventMulticaster
INFO: Unable to locate ApplicationEventMulticaster with name 'applicationEventMulticaster': using default [org.springframework.context.event.SimpleApplicationEventMulticaster@39
ab89]
20 juin 2008 11:27:57 org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
INFO: Pre-instantiating singletons in factory [org.springframework.beans.factory.support.DefaultListableBeanFactory defining beans [virtserver-properties,avmReauthenticatingAdvi
sor,reauthenticatingAdvice,clientTicketHolder,authenticationService,avmRemote,avmRemoteTransport,avmRemoteTransportRaw,attributeService,attributeServiceTransport,attributeServic
eTransportRaw,jndiInfoBean,virtServerInfo,virtServerMBeanServer,virtServerRegistry,serverConnector,virtServerExporter,virtWebappRegistry,cacheControlInfo]; root of BeanFactory h
ierarchy]
20 juin 2008 11:27:57 org.springframework.remoting.rmi.RmiClientInterceptor prepare
INFO: RMI stub [rmi://localhost:50500/authentication] is an RMI invoker
20 juin 2008 11:27:57 org.springframework.aop.framework.DefaultAopProxyFactory <clinit>
INFO: CGLIB2 not available: proxyTargetClass feature disabled
20 juin 2008 11:27:57 org.springframework.remoting.rmi.RmiClientInterceptor prepare
INFO: RMI stub [rmi://localhost:50500/avm] is an RMI invoker
20 juin 2008 11:27:57 org.springframework.remoting.rmi.RmiClientInterceptor prepare
INFO: RMI stub [rmi://localhost:50500/attributes] is an RMI invoker
20 juin 2008 11:27:57 org.springframework.remoting.rmi.RmiRegistryFactoryBean getRegistry
INFO: Looking for RMI registry at port '50501'
20 juin 2008 11:27:57 org.springframework.remoting.rmi.RmiRegistryFactoryBean getRegistry
ATTENTION: Could not detect RMI registry - creating new one
20 juin 2008 11:27:57 org.springframework.jmx.support.ConnectorServerFactoryBean afterPropertiesSet
INFO: JMX connector server started: javax.management.remote.rmi.RMIConnectorServer@1deeb40
20 juin 2008 11:27:57 org.springframework.jmx.export.MBeanExporter afterPropertiesSet
INFO: Registering beans for JMX exposure on startup
20 juin 2008 11:27:57 org.alfresco.catalina.host.AVMHost init
INFO: Deleting: /usr/share/alfresco/virtual-tomcat/work/Catalina/avm.alfresco.localhost
20 juin 2008 11:27:57 org.alfresco.catalina.host.AVMHost start
INFO: XML validation disabled
20 juin 2008 11:27:57 org.apache.catalina.core.StandardHost start
INFO: XML validation disabled
20 juin 2008 11:27:57 org.alfresco.mbeans.VirtServerRegistrationThread registerVirtServer
INFO: Connected to remote Alfresco JMX Server
20 juin 2008 11:28:12 org.apache.catalina.core.StandardHost start
INFO: XML validation disabled
20 juin 2008 11:28:12 org.apache.catalina.loader.WebappLoader start
INFO: Dual registration of jndi stream handler: factory already defined
20 juin 2008 11:28:13 org.apache.coyote.http11.Http11BaseProtocol start
INFO: Démarrage de Coyote HTTP/1.1 sur http-8180
20 juin 2008 11:28:13 org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8109
20 juin 2008 11:28:13 org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/16  config=null
20 juin 2008 11:28:13 org.apache.catalina.storeconfig.StoreLoader load
INFO: Find registry server-registry.xml at classpath resource
20 juin 2008 11:28:13 org.apache.catalina.startup.Catalina start
INFO: Server startup in 16231 ms

Vous me direz, où est le problème puisque j'arrive finalement à lancer le serveur virtuel :
j'ai un script de démarage automatique qui execute ces deux scripts l'un apres l'autre, le résultat est donc le même que dans le cas 1, le serveur virtuel ne se lance pas.
Or c'est tout de même fort génant qu'a chaque rédémarage de machine (en prod) on doivent relancer à la main le serveur virtuel.

mes questions sont les suivantes :

- ce comportement est il normal?
- comment réussir à automatiser le lancement des deux script? un wait? si oui où, comment?

ma théorie est la suivante : le serveur virtuel a besoin de ressources qu'alfresco met à sa disposition mais en les lanceant en parallèle alfresco n'a pas le temps de créer les ressources et le serveur virtuel ne peux pas y accèder, donc ne se lance pas !

si vous avez des idées, des éclaircissement ils sont les bienvenus !!

merci d'avance

Outcomes