[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [sdx-users] Connexion à un serveur Or acle
From: |
Malo Pichot |
Subject: |
Re: [sdx-users] Connexion à un serveur Or acle |
Date: |
Wed, 17 Feb 2010 15:15:54 +0100 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.9.1.5) Gecko/20091204 Lightning/1.0b2pre Thunderbird/3.0 |
Le 16/02/2010 19:16, vincent Leconte a écrit :
> Malo Pichot a écrit :
>> Bonjour,
>>
>> Je ne pense pas à un problème d'accès Oracle ou à un problème de driver.
>> Le message d'erreur de SDX fait remonter une erreur de configuration.
>> Mais à première vue votre déclaration du type "ORACLE" et du "dsi" sont
>> corrects. La stack trace complète pourrait aider, ainsi que la copie
>> complète de l'application.xconf générée (via
>> http://{server}/conf/application.xconf).
>>
>> Avec SDX 2.4, j'ai l'habitude d'utiliser un entrepôt Oracle (la version
>> 10g). Mais je n'ai jamais eu ce problème. Des erreurs de connexions oui,
>> mais les logs étaient explicites à ce sujet.
>>
>> En fouillant dans les sources SVN, je me rends compte que vous
>> n'utilisez pas la SDX 2.3 final. Est-ce possible ?
>>
>> A bientôt,
>>
>> Malo Pichot
>>
> Tout d'abord, merci de répondre si vite,.
>
> Effectivement, le serveur en question est en SDX2.3B1 (le test avait
> pour but de savoir si on pouvait utiliser oracle sans pour autant mettre
> à jour sdx en 2.4)
>
> Ceci dit, j'ai testé sur une config en "pur" SDX2.3 et j'obtiens à peu
> près la même chose.
>
> ERROR (2010-02-16) 19:10.15:480 [sdx.framework] (Unknown-URI)
> Unknown-thread/LoggingUtils: ORACLE
> org.apache.avalon.framework.configuration.ConfigurationException: ORACLE
> at
> fr.gouv.culture.sdx.utils.logging.LoggingUtils.logException(LoggingUtils.java:121)
>
> at
> fr.gouv.culture.sdx.documentbase.SDXDocumentBase.configureRepositories(SDXDocumentBase.java:369)
>
> at
> fr.gouv.culture.sdx.documentbase.SDXDocumentBase.configure(SDXDocumentBase.java:167)
>
> at
> fr.gouv.culture.sdx.documentbase.LuceneDocumentBase.configure(LuceneDocumentBase.java:235)
>
> at
> fr.gouv.culture.sdx.application.Application.configureDocumentBases(Application.java:595)
>
> at
> fr.gouv.culture.sdx.application.Application.configure(Application.java:338)
> at
> fr.gouv.culture.sdx.framework.FrameworkImpl.configureApplication(FrameworkImpl.java:407)
>
> at
> fr.gouv.culture.sdx.framework.FrameworkImpl.configureApplications(FrameworkImpl.java:307)
>
> at
> fr.gouv.culture.sdx.framework.FrameworkImpl.init(FrameworkImpl.java:791)
> at
> fr.gouv.culture.sdx.framework.FrameworkImpl.initialize(FrameworkImpl.java:708)
>
> at
> org.apache.avalon.framework.container.ContainerUtil.initialize(ContainerUtil.java:283)
>
> at
> org.apache.avalon.excalibur.component.DefaultComponentFactory.newInstance(DefaultComponentFactory.java:277)
>
> at
> org.apache.avalon.excalibur.component.ThreadSafeComponentHandler.initialize(ThreadSafeComponentHandler.java:108)
>
> at
> org.apache.avalon.excalibur.component.ExcaliburComponentManager.initialize(ExcaliburComponentManager.java:522)
>
> at
> org.apache.cocoon.components.CocoonComponentManager.initialize(CocoonComponentManager.java:527)
>
> at
> org.apache.avalon.framework.container.ContainerUtil.initialize(ContainerUtil.java:283)
>
> at org.apache.cocoon.Cocoon.initialize(Cocoon.java:306)
> at
> org.apache.avalon.framework.container.ContainerUtil.initialize(ContainerUtil.java:283)
>
> at
> org.apache.cocoon.servlet.CocoonServlet.createCocoon(CocoonServlet.java:1360)
>
> at org.apache.cocoon.servlet.CocoonServlet.init(CocoonServlet.java:481)
> at
> org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1172)
>
> at
> org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:992)
> at
> org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4058)
>
> at
> org.apache.catalina.core.StandardContext.start(StandardContext.java:4371)
> at
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
>
> at
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
> at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
> at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:830)
> at
> org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:719)
> at
> org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
> at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
> at
> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
> at
> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
>
> at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
> at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
> at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
> at
> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
> at
> org.apache.catalina.core.StandardService.start(StandardService.java:516)
> at
> org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
> at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
> Caused by: java.lang.ClassNotFoundException: ORACLE
> at
> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387)
>
> at
> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
>
> at java.lang.ClassLoader.loadClassInternal(Unknown Source)
> at java.lang.Class.forName0(Native Method)
> at java.lang.Class.forName(Unknown Source)
> at
> fr.gouv.culture.sdx.utils.Utilities.getObjectForClassName(Utilities.java:622)
>
> at
> fr.gouv.culture.sdx.utils.configuration.ConfigurationUtils.createRepository(ConfigurationUtils.java:178)
>
> at
> fr.gouv.culture.sdx.documentbase.SDXDocumentBase.configureRepositories(SDXDocumentBase.java:346)
>
> ... 44 more
>
> Pour le application.xconf j'ai utilisé celui de sdxtest :
>
> <sdx:documentBases> <sdx:documentBase id="sdxworld"
> type="lucene" default="true" keepOriginalDocuments="true"
> useCompoundFiles="true" autoOptimize="true">
> <sdx:split size="500" unit="m" nbDocuments="500000" />
> <sdx:queryParser
> class="fr.gouv.culture.sdx.search.lucene.queryparser.DefaultQueryParser"/>
> <sdx:repositories>
> <sdx:repository id="sdxworldRepo" dsi="dsOracle"
> type="ORACLE" default="true"/>
> <sdx:repository id="url" type="URL"/>
> </sdx:repositories>
Le "Caused by" de la stack-trace est instructif. SDX ne trouve pas de
classe "ORACLE" et c'est normal : elle n'existe pas ;-)
Après pas mal de temps passé dans les sources de SDX, je viens
d'apprendre une chose : par défaut, l'environnement de compilation de
SDX 2.3 (et version inférieure) ne compile pas la classe
ORACLERepository ;-) Dans SDX 2.4, ce comportement est modifié et Oracle
est pris en charge par défaut. Je ne sais pas pourquoi cela a été fait
comme ça dans les versions précédentes.
Je vais mettre en ligne une distribution SDX 2.3 *avec* Oracle d'ici
demain matin.
A bientôt,
Malo Pichot