J'essaie de configurer une simple application Web reposante, à l'aide de Tomcat 6.0.32, CXF 2.4.1. Chaque fois que je publie n'importe quel appel, je récupère une exception "Aucun bean nommé" CXF "est défini", dans lequel CXF est mon bus.
En regardant le journal des applications, je peux voir que l'instance CXF est créée et mis en cache. < / p>
================ LOG DE L'APP COMMENCE ====================== P >
910 débogage - création d'une instance partagée de Singleton Bean 'CXF' ' P>
910 Débogou - Création d'une instance de haricot' CXF ' P>
1018 Débogou - Bean de mise en cache adressée "CXF" à Autoriser la résolution de références circulaires potentielles P>
1031 Débogou - retourner une instance mises en cache avec impatience de Singleton Bean 'CXF', qui n'est pas complètement initialisée - une conséquence d'une référence circulaire p>
1034 Débogou - Terminé Création d'une instance de haricot 'CXF' P>
1035 Débogou - instance mise en cache de renvoi de Singleton haricot 'org.apache.cxf.bus.spring.buswiringBeanFostProcessor' p>
1035 Débogou - instance mise en cache de retour de Singleton haricot 'org.apache.cxf.bus.spring.jsr250beanpostProcessor' p>
1035 débogage - instance mise en cache de Singleton 'org.apache.cxf.bus .spring.busextensionPostProcesseur ' P>
1035 Débogou - Création d'une instance partagée de Singleton Bean' Connection '' P>
1035 Débogou - Création d'une instance de haricot 'Connexion' P>
1035 Débogage - Bean de mise en cache avec impatience «Connexion» pour permettre de résoudre les références circulaires potentielles p>
1052 - Fini Création de l'instance de haricot 'Connexion' P>
1052 Débogou - Création d'une instance partagée de Singleton Bean 'Connectionservice ' P>
1052 Débogou - Création d'une instance de haricot' Connectionservice ' P>
1053 Débogou - Bean de mise en cache avec impatience "Connectionervice" pour la résolution de références circulaires potentielles P>
1053 Débogage - Renvoyer une instance mise en cache de Singleton Bean 'Connection' P>
1053 Débogou - instance mise en cache de renvoi de Singleton Bean 'CXF' P>
1121 Débogou - Invoquant la méthode init 'Créer' sur haricot avec nom ' Connexeservice ' P>
1356 Débogou - Fini Création d'une instance de haricot' Connectionservice ' P>
1384 de débogageProcesseur de débogage avec nom' LifecycleProcessor ': Utilisation par défaut [Org.springf ramework.context.support.defullifecycleProcessor@45d1c3cd] p>
1385 Débogou - instance mise en cache de retour de Singleton 'LifecycleProcessor' P>
1387 Débogou - Sous-catégorisage de Singleton 'CXF' P>
1387 Débogou - instance mise en cache de renvoi de Singleton Bean 'CXF' P>
1388 Débogou - Invoquant la méthode init 'Créer' sur le haricot avec nom 'ConnectionsVice' P>
1391 Débogou - Fini Création de l'instance de haricot 'Connectionservice' P>
1391 Débogou - Impossible de localiser LifecycleProcessor avec nom 'LifecycleProcessor': Utilisation par défaut [Org.springframework.Context.support.defaulfLifEcycleProcessor@2c3299F6] P>
P> P> P> P> P> 1391 Débogou - instance mise en cache de retournement de Singleton Bean 'LifecycleProcessor' P>
1391 - Publié sur root WebApplicationContext comme servletContext Attribut avec nom [org.springframework.web.context.webapplicationContext.root] p>
P> P> 1391 Info - Root WebApplicationContext: initialisation terminée en 1390 ms p>
================ Log End ============== ========= P >
Mais quand une demande est entrée, elle échoue toujours à dire qu'il ne peut pas trouver le haricot. P>
===================== Tomcat (localhost) Journal Début ================ == p>
Info: Initialisation de la racine de ressort WebApplicationContextex P>
JUL 14, 2011 8:57:03 AM Org.apache.catalina.core.ApplicationContext Log P>
grave : StandardWrapper.Throwable P>
org.springframework.beans.Factory.noschbeandefinitionException: aucun haricot nommé 'cxf' est défini p> ====== =============== Tomcat (localhost) Log end ================== P> La seule chose que je On peut penser que le haricot est inséré dans un contexte et est extrait d'un autre, mais ne peut pas valider cela ou trouver un moyen de contourner. Toute aide serait grandement appréciée. P> p>
5 Réponses :
à partir de votre journal d'erreur, je suppose que vous utilisez le ressort, le cas échéant, vous devrez ajouter des lignes suivantes à votre contexte de printemps XML: espère que cela aide. P> < / p>
Ajout uniquement "
Si quelqu'un d'autre est ici et utilise Mulesoft ESB. Le problème est également présent dans ce système. Pour résoudre le problème, ajoutez la section suivante avant la définition des flux.
<spring:beans> <spring:import resource="classpath:META-INF/cxf/cxf.xml" /> <spring:import resource="classpath:META-INF/cxf/cxf-extension-xml.xml" /> <spring:import resource="classpath:META-INF/cxf/cxf-servlet.xml" /> <spring:bean class="org.apache.cxf.bus.spring.Jsr250BeanPostProcessor" /> <spring:bean id="classname" name="classname" class="some.implemented.interface.path" /> </spring:beans>
Ajoutez ces dépendances dans le fichier POM:
<dependency> Â Â Â <groupId>org.apache.cxf</groupId> Â Â Â <artifactId>cxf-rt-rs-extension-search</artifactId> Â Â Â <version>2.6.0</version> </dependency> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-rs-extension-providers</artifactId> <version>3.0.1</version> </dependency>
Si quelqu'un a besoin de la configuration basée sur Java à ressort pour résoudre ce problème, il existe deux options:
Vous pouvez importer le fichier CXF.XML dans votre classe de configuration Java avec: p>
@Bean public SpringBus cxf() { return new SpringBus(); }
Veuillez vérifier ces étapes ci-dessous:
1) Les lignes mentionnées ci-dessous doivent être incluses dans votre contexte de ressort XML: p> 2) web.xml devrait être configuré comme ci-dessous: p> 3) dépendances ci-dessous doit être ajouté à l'intérieur de votre pom.xml: p> si tout Cela ne vous a pas aidé à résoudre votre problème, la dernière étape consiste à vérifier votre configuration WebLogic, voici les étapes que vous devez vérifier sur votre serveur WebLogic: P> J'espère En vérifiant toutes ces étapes, votre problème est résolu. p> acclamations p> p>