IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java EE Discussion :

(CDI 1.1) WELD-001408 Message d'erreur CDI pour une injection d'une classe dans .Jar


Sujet :

Java EE

  1. #1
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut (CDI 1.1) WELD-001408 Message d'erreur CDI pour une injection d'une classe dans .Jar
    Bonjour a tous,

    J’ai un projet .War pour le quel utilise CDI pour injecté (le container qui fait le new a ma place) de la façon suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    @javax.enterprise.context.RequestScoped
    @Path("/dataSource")
    public class DataSourceService implements Serializable {
     
        @Inject
        RegenerateEva regenerateEva; 
    ...
    Ma classe RegenerateEva est un simple beans dans un .jar (projet Java SE), tout me semble correct mais j'ai l'erreur suivant au déploiement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    11:39:00,539 INFO  [org.jboss.weld.deployer] (MSC service thread 1-2) JBAS016005: Starting Services for CDI deployment: ProjetDate-war.war
    11:39:00,773 INFO  [org.jboss.weld.Version] (MSC service thread 1-2) WELD-000900 SNAPSHOT
    11:39:00,942 INFO  [org.jboss.weld.deployer] (MSC service thread 1-5) JBAS016008: Starting weld service for deployment ProjetDate-war.war
    11:39:02,903 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-5) MSC00001: Failed to start service jboss.deployment.unit."ProjetDate-war.war".WeldService: org.jboss.msc.service.StartException in service jboss.deployment.unit."ProjetDate-war.war".WeldService: org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [RegenerateEva] with qualifiers [@Default] at injection point [[field] @Inject ca.ireq.beans.service.DataSourceService.regenerateEva]
        at org.jboss.as.weld.services.WeldService.start(WeldService.java:83)
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_67]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_67]
        at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_67]
    Caused by: org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [RegenerateEva] with qualifiers [@Default] at injection point [[field] @Inject ca.ireq.beans.service.DataSourceService.regenerateEva]
        at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:275)
        at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:244)
        at org.jboss.weld.bootstrap.Validator.validateBean(Validator.java:107)
        at org.jboss.weld.bootstrap.Validator.validateRIBean(Validator.java:127)
        at org.jboss.weld.bootstrap.Validator.validateBeans(Validator.java:346)
        at org.jboss.weld.bootstrap.Validator.validateDeployment(Validator.java:331)
        at org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:366)
        at org.jboss.as.weld.WeldContainer.start(WeldContainer.java:83)
        at org.jboss.as.weld.services.WeldService.start(WeldService.java:76)
        ... 5 more
     
    11:39:04,477 INFO  [org.jboss.as.server] (DeploymentScanner-threads - 1) JBAS015870: Deploy of deployment "ProjetDate-war.war" was rolled back with failure message {"JBAS014671: Failed services" => {"jboss.deployment.unit.\"ProjetDate-war.war\".WeldService" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"ProjetDate-war.war\".WeldService: org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [RegenerateEva] with qualifiers [@Default] at injection point [[field] @Inject ca.ireq.beans.service.DataSourceService.regenerateEva]"}}
    11:39:08,182 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-8) JBAS015877: Stopped deployment ProjetDate-war.war in 3702ms
    11:39:08,282 INFO  [org.jboss.as.controller] (DeploymentScanner-threads - 1) JBAS014774: Service status report
    JBAS014777:   Services which failed to start:      service jboss.deployment.unit."ProjetDate-war.war".WeldService: org.jboss.msc.service.StartException in service jboss.deployment.unit."ProjetDate-war.war".WeldService: org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [RegenerateEva] with qualifiers [@Default] at injection point [[field] @Inject ca.ireq.beans.service.DataSourceService.regenerateEva]
     
    11:39:08,639 ERROR [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 2) {"JBAS014653: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-2" => {"JBAS014671: Failed services" => {"jboss.deployment.unit.\"ProjetDate-war.war\".WeldService" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"ProjetDate-war.war\".WeldService: org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [RegenerateEva] with qualifiers [@Default] at injection point [[field] @Inject ca.ireq.beans.service.DataSourceService.regenerateEva]"}}}}
    J'ai fait le test pour récupéré ma classe RegenerateEva.java et la mettre dans mon .war ET ça fonctionne bien !!? quel est l'erreur que j'ai fait ?!

    NB: dans mon .War j'ai bien mon beans.xml vide.

    Grand merci d'avance.

  2. #2
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut
    Bonjours a toutes bonnes années
    y t'il des propositions de solution?

    Merci

  3. #3
    Membre régulier
    Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 42
    Points : 96
    Points
    96
    Par défaut
    Ma classe RegenerateEva est un simple beans dans un .jar (projet Java SE)
    Peux-tu, s'il te plait, préciser où se site ce fichier jar qui contient la classe que Weld ne parvient pas à résoudre ?

  4. #4
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut
    Citation Envoyé par Ithildine Voir le message
    Peux-tu, s'il te plait, préciser où se site ce fichier jar qui contient la classe que Weld ne parvient pas à résoudre ?
    Bonjour oui.
    Le fichier .jar (qui contient la classe RegenerateEva) est importé dans mon projet .war (comme une simple librairie) c'est la que je veux l’injecté avec @Inject de CDI.

    Merci d'avance de vous proposition de solution

  5. #5
    Membre régulier
    Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 42
    Points : 96
    Points
    96
    Par défaut
    Ton fichier beans.xml se situe-t-il bien dans le répertoire META-INF de ton fichier jar qui contient les classes injectables ?
    Il ne doit pas être dans le war mais dans le jar que devra scanner Weld.

    Voici un petit article très bien fait qui explique bien les choses, j'espère qu'il t'aidera : http://www.byteslounge.com/tutorials...f-lib-jar-file

Discussions similaires

  1. Réponses: 2
    Dernier message: 31/05/2007, 15h11
  2. [VBA-E]Message d'erreur lors de l'affectation d'une macro + prob form
    Par V3lkin dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 22/11/2006, 14h07
  3. message d'erreur lors de mise à jour d'une BD access
    Par Abydos Business Group dans le forum Access
    Réponses: 2
    Dernier message: 25/01/2006, 16h36
  4. [Débutant(e)] Message d'erreur JDBC pour oracle
    Par krakatoe dans le forum JDBC
    Réponses: 1
    Dernier message: 14/09/2005, 16h44
  5. message d'erreur lors de la création d'une base
    Par franculo_caoulene dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 16/04/2004, 15h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo