9
votes

Aucun haricot nommé 'cxf' est défini

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 ======================

910 débogage - création d'une instance partagée de Singleton Bean 'CXF' '

910 Débogou - Création d'une instance de haricot' CXF '

1018 Débogou - Bean de mise en cache adressée "CXF" à Autoriser la résolution de références circulaires potentielles

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

1034 Débogou - Terminé Création d'une instance de haricot 'CXF'

1035 Débogou - instance mise en cache de renvoi de Singleton haricot 'org.apache.cxf.bus.spring.buswiringBeanFostProcessor'

1035 Débogou - instance mise en cache de retour de Singleton haricot 'org.apache.cxf.bus.spring.jsr250beanpostProcessor'

1035 débogage - instance mise en cache de Singleton 'org.apache.cxf.bus .spring.busextensionPostProcesseur '

1035 Débogou - Création d'une instance partagée de Singleton Bean' Connection ''

1035 Débogou - Création d'une instance de haricot 'Connexion'

1035 Débogage - Bean de mise en cache avec impatience «Connexion» pour permettre de résoudre les références circulaires potentielles

1052 - Fini Création de l'instance de haricot 'Connexion'

1052 Débogou - Création d'une instance partagée de Singleton Bean 'Connectionservice '

1052 Débogou - Création d'une instance de haricot' Connectionservice '

1053 Débogou - Bean de mise en cache avec impatience "Connectionervice" pour la résolution de références circulaires potentielles

1053 Débogage - Renvoyer une instance mise en cache de Singleton Bean 'Connection'

1053 Débogou - instance mise en cache de renvoi de Singleton Bean 'CXF'

1121 Débogou - Invoquant la méthode init 'Créer' sur haricot avec nom ' Connexeservice '

1356 Débogou - Fini Création d'une instance de haricot' Connectionservice '

1384 de débogageProcesseur de débogage avec nom' LifecycleProcessor ': Utilisation par défaut [Org.springf ramework.context.support.defullifecycleProcessor@45d1c3cd]

1385 Débogou - instance mise en cache de retour de Singleton 'LifecycleProcessor'

1387 Débogou - Sous-catégorisage de Singleton 'CXF'

1387 Débogou - instance mise en cache de renvoi de Singleton Bean 'CXF'

1388 Débogou - Invoquant la méthode init 'Créer' sur le haricot avec nom 'ConnectionsVice'

1391 Débogou - Fini Création de l'instance de haricot 'Connectionservice'

1391 Débogou - Impossible de localiser LifecycleProcessor avec nom 'LifecycleProcessor': Utilisation par défaut [Org.springframework.Context.support.defaulfLifEcycleProcessor@2c3299F6]

1391 Débogou - instance mise en cache de retournement de Singleton Bean 'LifecycleProcessor'

1391 - Publié sur root WebApplicationContext comme servletContext Attribut avec nom [org.springframework.web.context.webapplicationContext.root]

1391 Info - Root WebApplicationContext: initialisation terminée en 1390 ms

================ Log End ============== =========

Mais quand une demande est entrée, elle échoue toujours à dire qu'il ne peut pas trouver le haricot.

===================== Tomcat (localhost) Journal Début ================ ==

Info: Initialisation de la racine de ressort WebApplicationContextex

JUL 14, 2011 8:57:03 AM Org.apache.catalina.core.ApplicationContext Log

grave : StandardWrapper.Throwable

org.springframework.beans.Factory.noschbeandefinitionException: aucun haricot nommé 'cxf' est défini xxx

====== =============== Tomcat (localhost) Log end ==================

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.


0 commentaires

5 Réponses :


24
votes

à 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: xxx

espère que cela aide. < / p>


1 commentaires

Ajout uniquement "" était suffisant dans mon cas.



1
votes

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>


0 commentaires

0
votes

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>


0 commentaires

7
votes

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();
}


0 commentaires

0
votes

Veuillez vérifier ces étapes ci-dessous:

1) Les lignes mentionnées ci-dessous doivent être incluses dans votre contexte de ressort XML: xxx

2) web.xml devrait être configuré comme ci-dessous: xxx

3) dépendances ci-dessous doit être ajouté à l'intérieur de votre pom.xml: xxx

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:

  1. Assurez-vous de définir une machine à votre serveur.
  2. Vous devez spécifier votre serveur et votre ordinateur pour votre déploiement comme ci-dessous:

    Weblogic App déploiement

    J'espère En vérifiant toutes ces étapes, votre problème est résolu.

    acclamations


0 commentaires