2010-09-02 8 views
2

Travailler avec ressort, ci-dessous, le code de applicationContext-service.xml:problème applicationContext-service.xml définitions

<bean id="mediaObjectService" class="path.MediaObjectServiceImpl"> 

     <property name="mediaObjectDao" > 
      <ref bean="mediaObjectDao"/> 
     </property> 
     <property name="semanticQuestionDao" > 
      <ref bean="semanticQuestionDao"/> 
     </property> 
     <aop:scoped-proxy/> 
    </bean> 

Et tout en faisant un test, je reçois son erreur:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'scopedTarget.mediaObjectService' defined in class path resource [applicationContext-service.xml]: Initialization of bean failed; nested exception is java.lang.NoSuchMethodError: net.sf.cglib.proxy.Enhancer.setInterceptDuringConstruction(Z)V

Comme je le sais, les objets de portée de session ont toujours un préfixe appelé scopedTarget. au nom du bean-id.
Donc, si j'ai raison, mediaObjectService est l'id-bean, qui est déclaré correctement.
Peut-être que je me trompe, mais de toute façon, je ne vois pas l'erreur que j'ai faite.

Une aide?

Merci à l'avance

Répondre

0

Le problème est le suivant:

je testais dans un projet d'application web en Java. Dans cette application, applicationContext-service.xml a la balise <aop:scoped-proxy/>, qui permet d'éliminer les discordances d'impédance de portée.
Cette balise n'est pas bien corrigée avec les tests JUnit, donc la solution pour moi, du moins pour l'instant, est de tester ce service dans d'autres applications.

Thans de toute façon pour vos commentaires

0

On dirait que vos tests sont en cours d'exécution avec une version incompatible de cglib.jar sur leur chemin de classe, et son heurt avec les attentes de printemps. Assurez-vous que vous utilisez la version correcte, qui est probablement 2.1_3.

+0

J'utilise cette version cglib-2.1_3.jar –

4

Google suggests cela peut être dû à des versions dupliquées de la bibliothèque cglib sur votre chemin de classe.

0

contrôle l'ordre dans lequel a été défini cglib-2.1_3.jar dans votre fichier .classpath. Assurez-vous qu'il est défini avant le pot de printemps.

5

J'utilisé cglib-nodep-2.1_3.jar et il a résolu mon problème

+0

J'ai ajouté cglib-nodep-2.1_3.jar, pas résolu mon problème .. – Akash5288

+0

en utilisant cglib-nodep-2.1_3.jar fonctionne très bien –

Questions connexes