Transactionnelle annotation d'erreur
Quand j'ai mis "@Transactional(readOnly=false)
" annotation dans ma classe de Service j'obtiens l'erreur suivante
Description:
Le haricot "studentService" ne peut pas être injecté sous forme de
'com.student.service.StudentServiceImpl
"parce que c'est un JDK dynamique
proxy qui implémente: com.de l'étudiant.service.StudentService
Exemple de code:
@Service("studentService")
@Transactional(readOnly=false)
public class StudentServiceImpl implements StudentService {
}
public interface StudentService {
}
Action:
Injecter le haricot comme l'une de ses interfaces, ou en forçant l'utilisation de CGLib à base de procurations par la mise en
proxyTargetClass=true
sur@EnableAsync
et/ou@EnableCaching
.Le processus est terminé avec le code de sortie 1
Quelle en est la cause?
Si vous essayez de construire des projets à l'aide de JRE alors pouvez-vous s'il vous plaît changer de JDK? Avez-vous de tous les aspects liés pots sur votre classpath?
C'est mon erreur, j'ai autocâblés la mise en œuvre de la classe insted de l'Interface.
Vous pourriez répondre à votre propre question avec la réponse parce que j'ai couru dans la même chose et cela m'a aidé à le résoudre. Merci!
C'est mon erreur, j'ai autocâblés la mise en œuvre de la classe insted de l'Interface.
Vous pourriez répondre à votre propre question avec la réponse parce que j'ai couru dans la même chose et cela m'a aidé à le résoudre. Merci!
OriginalL'auteur syv | 2016-09-14
Vous devez vous connecter pour publier un commentaire.
au printemps de démarrage des projets, essayez d'ajouter :
à votre demande.propriétés
OU
de votre ressort de démarrage point d'entrée.
OriginalL'auteur mtbadi39
Comme déjà mentionné sur le commentaire, l'erreur se produit lorsque vous essayez d'injecter/autowire la mise en œuvre de la classe au lieu de l'interface.
Sur le programme d'installation posté par SO,
Si vous autowire l'interface comme ci-dessous, vous n'obtiendrez pas une erreur:
vérifier Qualifier d'annotation
OriginalL'auteur gtiwari333