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

  1. #1
    Responsable Java

    Avatar de Mickael Baron
    Homme Profil pro
    Ingénieur de Recherche en Informatique
    Inscrit en
    juillet 2005
    Messages
    13 806
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche en Informatique
    Secteur : Service public

    Informations forums :
    Inscription : juillet 2005
    Messages : 13 806
    Points : 66 935
    Points
    66 935
    Par défaut Tutoriel pour développer une application web avec Vue.js et Vue CLI : mise en oeuvre (partie 2)
    Bonjour,

    Je vous propose un tutoriel en trois parties concernant le développement d'application web monopage (Single-Page Application) avec Vue.js.

    Cette deuxième partie présente les principaux concepts de Vue.js au travers d'un exemple complet.

    Voici le plan

    • présentation de l'exemple qui servira de fil rouge ;
    • création du squelette du projet PollDLE avec Vue.js et Vue CLI ;
    • initialisation des modèles et des vues pour les différents composants ;
    • mise en place des bindings entre les modèles et les vues via l'utilisation du templating (interpolation et les directives) ;
    • utilisation des propriétés calculées (computed) et des observateurs (watch) ;
    • détail du fonctionnement d'un composant pour savoir développer, instancier et dialoguer avec un composant ;
    • invocation d'un service web Rest pour modifier ou retourner la valeur d'un modèle ;
    • paramétrage du système de routage pour les changements de valeurs d'URL.

    L'exemple est appelé PollDLE qui est une application pour créer et soumettre des sondages. PollDLE ~= Poll + la dernière partie de Doo DLE (Doodle est une application de planification de rendez-vous, très connue pour être simple d'utilisation)

    L'URL du tutoriel : https://mbaron.developpez.com/tutori...ise-en-oeuvre/

    Le code source complet de l'exemple PollDLE est disponible à cette adresse : https://github.com/mickaelbaron/vuej...e-tutorial-src

    Profiter de cette discussion pour laisser des commentaires.

    Tutoriel écrit avec ❤️

    Mickael



    Retrouver les meilleurs cours et tutoriels pour apprendre JavaScript
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Ingénieur de Recherche en informatique au LIAS / ISAE-ENSMA
    Page de Developpez.com : mbaron.developpez.com
    Twitter : www.twitter.com/mickaelbaron
    Blog : mickael-baron.fr
    LinkedIn : www.linkedin.com/in/mickaelbaron
    DBLP : dblp.uni-trier.de/pers/hd/b/Baron:Micka=euml=l

  2. #2
    Community Manager

    Avatar de Siguillaume
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    août 2007
    Messages
    6 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : août 2007
    Messages : 6 125
    Points : 33 730
    Points
    33 730
    Par défaut
    Merci pour ce tutoriel que je trouve complet et bien pratique
    Vous avez envie de contribuer au sein du Club Developpez.com ? Contactez-nous maintenant !
    Vous êtes passionné, vous souhaitez partager vos connaissances en informatique, vous souhaitez faire partie de la rédaction.
    Il suffit de vous porter volontaire et de nous faire part de vos envies de contributions :
    Rédaction d'articles/cours/tutoriels, Traduction, Contribution dans la FAQ, Rédaction de news, interviews et témoignages, Organisation de défis, de débats et de sondages, Relecture technique, Modération, Correction orthographique, etc.
    Vous avez d'autres propositions de contributions à nous faire ? Vous souhaitez en savoir davantage ? N'hésitez pas à nous approcher.

  3. #3
    Expert éminent

    Profil pro
    Inscrit en
    avril 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2009
    Messages : 113
    Points : 6 271
    Points
    6 271
    Par défaut
    Bonjour Mickaël,

    Tout d'abord merci pour ce tutoriel qui m'intéresse beaucoup. Je suis arrivé au lancement du serveur REST écrit en Java. J'ai l'erreur suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    λ "%JAVA_HOME%/bin/java.exe" -cp "polldle-server/target/dependency/*:polldle-server/target/classes" com.kumuluz.ee.EeApplication                                                                                                                      
    Error: Could not find or load main class com.kumuluz.ee.EeApplication                                                      
    Caused by: java.lang.ClassNotFoundException: com.kumuluz.ee.EeApplication
    J'ai vérifié : la classe [com.kumuluz.ee.EeApplication] n'existe effectivement pas. Où est mon problème ? La compilation s'est déroulée normalement.

    Merci de ta réponse.

    Serge

  4. #4
    Responsable Java

    Avatar de Mickael Baron
    Homme Profil pro
    Ingénieur de Recherche en Informatique
    Inscrit en
    juillet 2005
    Messages
    13 806
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche en Informatique
    Secteur : Service public

    Informations forums :
    Inscription : juillet 2005
    Messages : 13 806
    Points : 66 935
    Points
    66 935
    Par défaut
    Bonjour Serge,

    Merci beaucoup de t'intéresser à notre tutoriel.

    J'ai fait les expérimentations sous macOS. Je pense, à toi de vérifier à l'exécution, que le séparateur au niveau du classpath est ; et non : Les joies du multiplateforme ...

    Tu peux donc essayer cela

    "%JAVA_HOME%/bin/java.exe" -cp "polldle-server/target/dependency/*;polldle-server/target/classes" com.kumuluz.ee.EeApplication
    Mickael
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Ingénieur de Recherche en informatique au LIAS / ISAE-ENSMA
    Page de Developpez.com : mbaron.developpez.com
    Twitter : www.twitter.com/mickaelbaron
    Blog : mickael-baron.fr
    LinkedIn : www.linkedin.com/in/mickaelbaron
    DBLP : dblp.uni-trier.de/pers/hd/b/Baron:Micka=euml=l

  5. #5
    Expert éminent

    Profil pro
    Inscrit en
    avril 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2009
    Messages : 113
    Points : 6 271
    Points
    6 271
    Par défaut
    Citation Envoyé par Mickael Baron Voir le message
    Bonjour Serge,

    Merci beaucoup de t'intéresser à notre tutoriel.

    J'ai fait les expérimentations sous macOS. Je pense, à toi de vérifier à l'exécution, que le séparateur au niveau du classpath est ; et non : Les joies du multiplateforme ...

    Tu peux donc essayer cela



    Mickael
    Oui, c'était bien ça. Merci. Dans le même esprit, sous windows, au lieu de [export var=valeur], on écrit [set var=valeur] (pou fixer le port du serveur).

    Serge

  6. #6
    Expert éminent

    Profil pro
    Inscrit en
    avril 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2009
    Messages : 113
    Points : 6 271
    Points
    6 271
    Par défaut
    Bonjour aux auteurs du tutoriel,

    J'ai le problème suivant ;

    Blocage d’une requête multiorigines (Cross-Origin Request) : la politique « Same Origin » ne permet pas de consulter la ressource distante située sur http://127.0.0.1:9991/polldles. Raison : l’en-tête CORS « Access-Control-Allow-Origin » est manquant.
    Le problème vient du fait que l'application [PollDLE] est disponible en test à l'URL [http://localhost:8080]. C'est là que l'application [vue ui] l'a lancée. L'application [PollDLE] fait des requêtes au serveur REST à l'URL [http://localhost:9991]. C'est donc une requête CORS, une requête inter-domaines. Celles-ci ne sont possibles que si le serveur envoie des entêtes HTTP bien précises. Or ici, il ne les envoie apparemment pas et donc le navigateur exécutant l'application [PollDLE] a refusé de mener la requête à son terme.

    Comment puis-je contourner ce problème en mode développement ? En production, l'application [PollDLE] et le serveur REST seront servis sur le même port et donc le même domaine ce qui éliminera les requêtes inter-domaines qui posent problème ici. Vous comment procédiez-vous en mode développement de l'application ?

    Serge

  7. #7
    Responsable Java

    Avatar de Mickael Baron
    Homme Profil pro
    Ingénieur de Recherche en Informatique
    Inscrit en
    juillet 2005
    Messages
    13 806
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche en Informatique
    Secteur : Service public

    Informations forums :
    Inscription : juillet 2005
    Messages : 13 806
    Points : 66 935
    Points
    66 935
    Par défaut
    Bonjour Serge,

    C'est l'objectif de la ressource définie par la classe CrossDomainFilter de lever le problème de CORS pour la phase de développement.

    Normalement la classe devrait y être (prise en compte depuis la classe PolldleApplication)

    Je viens de faire le test depuis une exécution backend sous Eclipse et ça fonctionne.

    Mickael
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Ingénieur de Recherche en informatique au LIAS / ISAE-ENSMA
    Page de Developpez.com : mbaron.developpez.com
    Twitter : www.twitter.com/mickaelbaron
    Blog : mickael-baron.fr
    LinkedIn : www.linkedin.com/in/mickaelbaron
    DBLP : dblp.uni-trier.de/pers/hd/b/Baron:Micka=euml=l

  8. #8
    Expert éminent

    Profil pro
    Inscrit en
    avril 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2009
    Messages : 113
    Points : 6 271
    Points
    6 271
    Par défaut
    Citation Envoyé par Mickael Baron Voir le message
    Bonjour Serge,

    C'est l'objectif de la ressource définie par la classe CrossDomainFilter de lever le problème de CORS pour la phase de développement.

    Normalement la classe devrait y être (prise en compte depuis la classe PolldleApplication)

    Je viens de faire le test depuis une exécution backend sous Eclipse et ça fonctionne.

    Mickael
    Bonjour Mickaël,

    Je ne suis pas sûr de comprendre ta réponse. La classe [CrossDomainFilter] est quelque chose qui est côté serveur REST ? Je crois avoir suivi la démarche du tuto pour lancer celui-ci. Ai-je oublié quelque-chose ou la classe est-elle opérationnelle nativement ?

    De mon côté, l'erreur est la suivante. Je travaille sous windows 10. J'exécute l'application [PollDLE] à l'adresse [http://localhost:8080]. Elle est exécutée par un navigateur Firefox. Lorsque je crée un PollDLE, voici les échanges réseau qui prennent place :

    [PollDLE] envoie les entêtes HTTP suivants vers le serveur REST :

    1. OPTIONS http://127.0.0.1:9991/polldles
    2. Host: 127.0.0.1:9991
    3. User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0
    4. Accept: */*
    5. Accept-Language: fr,fr-FR;q=0.8,en-US;q=0.5,en;q=0.3
    6. Accept-Encoding: gzip, deflate
    7. Access-Control-Request-Method: POST
    8. Access-Control-Request-Headers: content-type
    9. Referer: http://localhost:8080/
    10. Origin: http://localhost:8080
    11. DNT: 1
    12. Connection: keep-alive

    Il ne fait pas une requête POST mais OPTIONS (ligne 1) car il demande des autorisations au serveur REST (lignes 7, 8, 10). Le serveur REST lui répond de la façon suivante :

    1. HTTP/1.1 500 Request failed.
    2. Date: Thu, 29 Aug 2019 15:08:38 GMT
    3. X-Powered-By: KumuluzEE/3.4.1
    4. Content-Length: 0
    5. Server: Jetty(9.4.15.v20190215)
    On voit en ligne 1 que le serveur a répondu par une erreur 500, ce qui clôt le dialogue client-serveur. Pourquoi a-t-il répondu ainsi ?

    Si je prends un client indépendant et fais la requête suivante : [POST http://127.0.0.1:9991/polldles] en mettant le corps JSON suivant :

    {"question":"aimez-vous vue.js ?","pollOptions":[{"name":"un peu"},{"name":"beaucoup"},{"name":"pas du tout"}]}
    alors le serveur envoie bien les entêtes HTTP du CORS (lignes 2-6) :

    1. < Content-Type: text/plain
    2. < Access-Control-Allow-Origin: http://localhost:8080
    3. < Access-Control-Allow-Credentials: true
    4. < Access-Control-Allow-Methods: GET, POST
    5. < Allow: GET, POST
    6. < Access-Control-Allow-Headers: Content-Type, Accept
    avec la réponse JSON :

    {"question":"aimez-vous vue.js ?","polldleOptions":[{"id":1,"name":"un peu","destroyed":false},{"id":2,"name":"beaucoup","destroyed":false},{"id":3,"name":"pas du tout","destroyed":false}],"key":null,"pathUrl":"1"}
    Donc on dirait que le serveur n'aime pas la commande [Options] envoyée par Firefox. Ça ne marche pas non plus avec Chrome. J'ai donc un problème. Je suis le seul ? Je vais continuer à chercher.

    Serge

  9. #9
    Responsable Java

    Avatar de Mickael Baron
    Homme Profil pro
    Ingénieur de Recherche en Informatique
    Inscrit en
    juillet 2005
    Messages
    13 806
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche en Informatique
    Secteur : Service public

    Informations forums :
    Inscription : juillet 2005
    Messages : 13 806
    Points : 66 935
    Points
    66 935
    Par défaut
    Bonjour Serge,

    Désolé pour le retard.

    Je ne suis pas sûr de comprendre ta réponse. La classe [CrossDomainFilter] est quelque chose qui est côté serveur REST ? Je crois avoir suivi la démarche du tuto pour lancer celui-ci. Ai-je oublié quelque-chose ou la classe est-elle opérationnelle nativement ?
    Oui elle est côté serveur. C'est une classe qui est présent dans le code fourni comme exemple.

    Tu lances le projet Vue.js depuis quel répertoire ? Le répertoire contenant l'intégralité du projet '/polldle-vue' ou les répertoires utilisés pour les différents exercices ?

    Normalement la méthode HTTP utilisée est POST car c'est une création de ressource.

    J'attends ta réponse. De mon côté, j'ai testé et c'est nickel. Pour la requête HTTP côté Vue.js, on va clairement que c'est du POST

    var request = new Request(process.env.VUE_APP_SERVER_URL + "/polldles", {
    method: "POST",
    body: JSON.stringify(polldleObject),
    headers: {
    'Content-Type': 'application/json'
    }
    })
    Mickael
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Ingénieur de Recherche en informatique au LIAS / ISAE-ENSMA
    Page de Developpez.com : mbaron.developpez.com
    Twitter : www.twitter.com/mickaelbaron
    Blog : mickael-baron.fr
    LinkedIn : www.linkedin.com/in/mickaelbaron
    DBLP : dblp.uni-trier.de/pers/hd/b/Baron:Micka=euml=l

  10. #10
    Expert éminent

    Profil pro
    Inscrit en
    avril 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2009
    Messages : 113
    Points : 6 271
    Points
    6 271
    Par défaut
    Citation Envoyé par Mickael Baron Voir le message
    Bonjour Serge,

    Désolé pour le retard.



    Oui elle est côté serveur. C'est une classe qui est présent dans le code fourni comme exemple.

    Tu lances le projet Vue.js depuis quel répertoire ? Le répertoire contenant l'intégralité du projet '/polldle-vue' ou les répertoires utilisés pour les différents exercices ?

    Normalement la méthode HTTP utilisée est POST car c'est une création de ressource.

    J'attends ta réponse. De mon côté, j'ai testé et c'est nickel. Pour la requête HTTP côté Vue.js, on va clairement que c'est du POST



    Mickael
    Je lance l'application à partir d'un dossier que j'ai créé pour suivre le tuto. Je n'ai pas essayé de la lancer à partir de [/pooldle-vue]. je vais essayer pour voir. Tu utilises quel navigateur pour exécuter [PollDLE] ? Moi, j'ai testé avec Firefox, Chrome et Edge, mais pas Safari.

    Serge

  11. #11
    Expert éminent

    Profil pro
    Inscrit en
    avril 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2009
    Messages : 113
    Points : 6 271
    Points
    6 271
    Par défaut
    Citation Envoyé par Mickael Baron Voir le message
    Bonjour Serge,

    Tu lances le projet Vue.js depuis quel répertoire ? Le répertoire contenant l'intégralité du projet '/polldle-vue' ou les répertoires utilisés pour les différents exercices ?

    Mickael
    Mickaël,

    Je viens de tester le code téléchargé du tutoriel. J'ai exécuté le code du dossier [/polldle-vue]. J'ai le même problème. Lorsque j'ai voulu créer le sondage, Firefox a envoyé une commande [OPTIONS] au serveur qui a répondu avec une erreur 500. Pour avoir déjà rencontré ce problème, le comportement de Firefox est normal. Il aurait fallu que le serveur accepte la commande [OPTIONS] et renvoie les entêtes CORS attendus par Firefox. Firefox aurait ensuite fait la requête POST demandée par le code exécuté et je sais que celle-ci fonctionne puisque je l'ai faite à la main avec un client tiers.

    Ce que je ne comprends pas, c'est que ça marche pour toi.

    Par ailleurs, lorsque je fais le [Create PollDLE], le serveur signale une série d'exceptions sur sa console.

    Serge

    PS : je te joins une image
    Nom : 2019-08-30_18-52-51.jpg
Affichages : 57
Taille : 128,6 Ko

  12. #12
    Responsable Java

    Avatar de Mickael Baron
    Homme Profil pro
    Ingénieur de Recherche en Informatique
    Inscrit en
    juillet 2005
    Messages
    13 806
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche en Informatique
    Secteur : Service public

    Informations forums :
    Inscription : juillet 2005
    Messages : 13 806
    Points : 66 935
    Points
    66 935
    Par défaut
    Serge,

    J'ai testé sous Chrome et Firefox sous macOS et Linux.

    Par ailleurs, lorsque je fais le [Create PollDLE], le serveur signale une série d'exceptions sur sa console.
    C'est intéressant cela. Tu peux joindre les exceptions ? Je pense que ça vient du côté serveur (je te parie que c'est en rapport avec JAXB)

    Avant toute chose, quelle version de Java utilises-tu pour exécuter la partie serveur ? L'exécution est prévue pour un Java 8. Pour supérieur, il faudra ajouter des dépendances supplémentaires dues au ménage réalisé par Oracle.

    Mickael
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Ingénieur de Recherche en informatique au LIAS / ISAE-ENSMA
    Page de Developpez.com : mbaron.developpez.com
    Twitter : www.twitter.com/mickaelbaron
    Blog : mickael-baron.fr
    LinkedIn : www.linkedin.com/in/mickaelbaron
    DBLP : dblp.uni-trier.de/pers/hd/b/Baron:Micka=euml=l

  13. #13
    Expert éminent

    Profil pro
    Inscrit en
    avril 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2009
    Messages : 113
    Points : 6 271
    Points
    6 271
    Par défaut
    Citation Envoyé par Mickael Baron Voir le message
    Serge,

    Tu peux joindre les exceptions ?

    Avant toute chose, quelle version de Java utilises-tu pour exécuter la partie serveur ?

    Mickael
    Mickaël,

    J'utilise un JDK 12.

    J'ai utilisé un client HTTP tiers pour envoyer la commande HTTP [OPTIONS] suivante :

    OPTIONS /polldles HTTP/1.1
    Host: 127.0.0.1:9991
    Content-Type: application/json
    User-Agent: PostmanRuntime/7.16.3
    Accept: */*
    Cache-Control: no-cache
    Postman-Token: f8ebb9de-e5a1-4ded-a8a6-6481c22c392c,16c34cdd-2395-44c7-9001-f4463ccfbd9d
    Host: 127.0.0.1:9991
    Accept-Encoding: gzip, deflate
    Content-Length:
    Connection: keep-alive
    cache-control: no-cache
    Je fais donc à la main ce que fait Firefox. J'ai redirigé les logs vers [dump.txt] et les erreurs vers [errors.txt]. Le serveur répond avec une erreur 500 comme on le sait déjà. Dans [dump.txt] on a les logs suivants :

    2019-08-31 11:21:26.535 INFO -- com.kumuluz.ee.configuration.sources.FileConfigurationSource -- Unable to load configuration from file. No configuration files were found.
    2019-08-31 11:21:26.549 INFO -- com.kumuluz.ee.EeApplication -- Initialized configuration source: EnvironmentConfigurationSource
    2019-08-31 11:21:26.550 INFO -- com.kumuluz.ee.EeApplication -- Initialized configuration source: SystemPropertyConfigurationSource
    2019-08-31 11:21:26.550 INFO -- com.kumuluz.ee.EeApplication -- Initialized configuration source: FileConfigurationSource
    2019-08-31 11:21:26.550 INFO -- com.kumuluz.ee.EeApplication -- Initializing KumuluzEE
    2019-08-31 11:21:26.550 INFO -- com.kumuluz.ee.EeApplication -- Checking for requirements
    2019-08-31 11:21:26.552 INFO -- com.kumuluz.ee.EeApplication -- KumuluzEE running in an exploded class and dependency runtime.
    2019-08-31 11:21:26.552 INFO -- com.kumuluz.ee.EeApplication -- Checks passed
    2019-08-31 11:21:26.552 INFO -- com.kumuluz.ee.EeApplication -- Initialized main configuration
    2019-08-31 11:21:26.553 INFO -- com.kumuluz.ee.EeApplication -- Loading available EE components and extensions
    2019-08-31 11:21:26.554 INFO -- com.kumuluz.ee.loaders.ServerLoader -- Loading the KumuluzEE server...
    2019-08-31 11:21:26.574 INFO -- com.kumuluz.ee.loaders.ServerLoader -- Found Jetty
    2019-08-31 11:21:26.578 INFO -- com.kumuluz.ee.loaders.ComponentLoader -- Loading available components
    2019-08-31 11:21:26.587 INFO -- com.kumuluz.ee.loaders.ComponentLoader -- Loading for components complete
    2019-08-31 11:21:26.591 INFO -- com.kumuluz.ee.EeApplication -- Processing EE component dependencies
    2019-08-31 11:21:26.593 INFO -- com.kumuluz.ee.loaders.ConfigExtensionLoader -- Loading available config extensions
    2019-08-31 11:21:26.596 INFO -- com.kumuluz.ee.loaders.ConfigExtensionLoader -- Config extension loading complete
    2019-08-31 11:21:26.596 INFO -- com.kumuluz.ee.EeApplication -- Processing EE single extensions dependencies
    2019-08-31 11:21:26.597 INFO -- com.kumuluz.ee.EeApplication -- Processing EE extension dependencies
    2019-08-31 11:21:26.598 INFO -- com.kumuluz.ee.loaders.ExtensionLoader -- Loading available extensions
    2019-08-31 11:21:26.600 INFO -- com.kumuluz.ee.loaders.ExtensionLoader -- Extension loading complete
    2019-08-31 11:21:26.600 INFO -- com.kumuluz.ee.EeApplication -- Processing EE extension dependencies
    2019-08-31 11:21:26.600 INFO -- com.kumuluz.ee.EeApplication -- EE Components and extensions loaded
    2019-08-31 11:21:26.600 INFO -- com.kumuluz.ee.EeApplication -- Initializing the KumuluzEE runtime
    2019-08-31 11:21:26.783 INFO -- com.kumuluz.ee.EeApplication -- Initialized the KumuluzEE runtime
    2019-08-31 11:21:26.783 INFO -- com.kumuluz.ee.EeApplication -- Initializing config extensions
    2019-08-31 11:21:26.785 INFO -- com.kumuluz.ee.EeApplication -- Config extensions initialized
    2019-08-31 11:21:26.819 INFO -- org.eclipse.jetty.util.log.Log -- Logging initialized @640ms to org.eclipse.jetty.util.log.JavaUtilLog
    2019-08-31 11:21:26.829 INFO -- com.kumuluz.ee.jetty.JettyFactory -- Starting KumuluzEE on Jetty with 5 minimum and 100 maximum threads
    2019-08-31 11:21:26.869 INFO -- com.kumuluz.ee.jetty.JettyFactory -- Starting KumuluzEE on port(s): 9991 [http/1.1]
    2019-08-31 11:21:26.921 INFO -- com.kumuluz.ee.jetty.JettyServletServer -- Starting KumuluzEE with context root '/'
    2019-08-31 11:21:26.926 INFO -- com.kumuluz.ee.EeApplication -- Initializing components
    2019-08-31 11:21:26.927 INFO -- com.kumuluz.ee.EeApplication -- Found EE component CDI implemented by Weld
    2019-08-31 11:21:26.927 INFO -- com.kumuluz.ee.cdi.CdiComponent -- Initiating Weld
    2019-08-31 11:21:26.927 INFO -- com.kumuluz.ee.EeApplication -- Found EE component JAX-RS implemented by Jersey
    2019-08-31 11:21:26.927 INFO -- com.kumuluz.ee.jaxrs.JaxRsComponent -- Initiating Jersey
    2019-08-31 11:21:26.927 INFO -- com.kumuluz.ee.EeApplication -- Components initialized
    2019-08-31 11:21:26.927 INFO -- com.kumuluz.ee.EeApplication -- Initializing extensions
    2019-08-31 11:21:26.928 INFO -- com.kumuluz.ee.EeApplication -- Extensions Initialized
    2019-08-31 11:21:26.929 INFO -- org.eclipse.jetty.server.Server -- jetty-9.4.15.v20190215; built: 2019-02-15T16:53:49.381Z; git: eb70b240169fcf1abbd86af36482d1c49826fa0b; jvm 12.0.1+12
    2019-08-31 11:21:27.230 INFO -- org.eclipse.jetty.annotations.AnnotationConfiguration -- Scanning elapsed time=114ms
    2019-08-31 11:21:27.248 INFO -- org.eclipse.jetty.webapp.StandardDescriptorProcessor -- NO JSP Support for /, did not find org.eclipse.jetty.jsp.JettyJspServlet
    2019-08-31 11:21:27.312 INFO -- org.jboss.weld.environment.servlet.EnhancedListener -- WELD-ENV-001008: Initialize Weld using ServletContainerInitializer
    2019-08-31 11:21:27.331 INFO -- org.jboss.weld.bootstrap.WeldStartup -- WELD-000900: 3.1.1 (Final)
    2019-08-31 11:21:27.460 INFO -- org.jboss.weld.environment.deployment.discovery.DiscoveryStrategyFactory -- WELD-ENV-000020: Using jandex for bean discovery
    2019-08-31 11:21:27.674 INFO -- org.jboss.weld.bootstrap.WeldStartup -- WELD-000101: Transactional services not available. Injection of @Inject UserTransaction not available. Transactional observers will be invoked synchronously.
    2019-08-31 11:21:27.816 INFO -- org.jboss.weld.event.ExtensionObserverMethodImpl -- WELD-000411: Observer method [BackedAnnotatedMethod] private org.glassfish.jersey.ext.cdi1x.internal.CdiComponentProvider.processAnnotatedType(@Observes ProcessAnnotatedType) receives events for all annotated types. Consider restricting events using @WithAnnotations or a generic type with bounds.
    2019-08-31 11:21:27.829 WARN -- org.jboss.weld.bootstrap.events.BeforeBeanDiscoveryImpl -- WELD-000146: BeforeBeanDiscovery.addAnnotatedType(AnnotatedType<?>) used for class org.glassfish.jersey.ext.cdi1x.internal.CdiComponentProvider$JaxRsParamProducer is deprecated from CDI 1.1!
    2019-08-31 11:21:27.908 INFO -- org.jboss.weld.environment.jetty.JettyContainer -- WELD-ENV-001200: Jetty 7.2+ detected, CDI injection will be available in Servlets and Filters. Injection into Listeners should work on Jetty 9.1.1 and newer.
    2019-08-31 11:21:28.155 INFO -- org.eclipse.jetty.server.session.DefaultSessionIdManager -- DefaultSessionIdManager workerName=node0
    2019-08-31 11:21:28.155 INFO -- org.eclipse.jetty.server.session.DefaultSessionIdManager -- No SessionScavenger set, using defaults
    2019-08-31 11:21:28.161 INFO -- org.eclipse.jetty.server.session.HouseKeeper -- node0 Scavenging every 660000ms
    PolldleApplication.PolldleApplication()
    2019-08-31 11:21:28.638 INFO -- org.eclipse.jetty.server.handler.ContextHandler -- Started o.e.j.w.WebAppContext@31f9b85e{/,file:///C:/Users/serge/AppData/Local/Temp/kumuluzee-tmp-webapp9435323898860256128/,AVAILABLE}
    2019-08-31 11:21:28.664 INFO -- org.eclipse.jetty.server.AbstractConnector -- Started ServerConnector@1e43e323{HTTP/1.1,[http/1.1]}{0.0.0.0:9991}
    2019-08-31 11:21:28.665 INFO -- org.eclipse.jetty.server.Server -- Started @2490ms
    2019-08-31 11:21:28.665 INFO -- com.kumuluz.ee.EeApplication -- KumuluzEE started successfully
    2019-08-31 11:21:33.051 WARNING -- org.glassfish.jersey.internal.Errors -- The following warnings have been detected: WARNING: Unknown HK2 failure detected:
    MultiException stack 1 of 2
    javax.ws.rs.ProcessingException: Error creating a JAXBContext for wadl processing.
    at org.glassfish.jersey.server.wadl.internal.WadlApplicationContextImpl.<init>(WadlApplicationContextImpl.java:120)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
    at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
    at org.glassfish.hk2.utilities.reflection.ReflectionHelper.makeMe(ReflectionHelper.java:1352)
    at org.jvnet.hk2.internal.ClazzCreator.createMe(ClazzCreator.java:248)
    at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:342)
    at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463)
    at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:59)
    at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:47)
    at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture$1.call(Cache.java:74)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture.run(Cache.java:131)
    at org.glassfish.hk2.utilities.cache.Cache.compute(Cache.java:176)
    at org.jvnet.hk2.internal.SingletonContext.findOrCreate(SingletonContext.java:98)
    at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102)
    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:92)
    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:66)
    at org.glassfish.jersey.inject.hk2.ContextInjectionResolverImpl.resolve(ContextInjectionResolverImpl.java:103)
    at org.jvnet.hk2.internal.ClazzCreator.resolve(ClazzCreator.java:188)
    at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:211)
    at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:334)
    at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463)
    at org.glassfish.jersey.inject.hk2.RequestContext.findOrCreate(RequestContext.java:59)
    at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.internalGetService(ServiceLocatorImpl.java:754)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.internalGetService(ServiceLocatorImpl.java:717)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:687)
    at org.glassfish.jersey.inject.hk2.AbstractHk2InjectionManager.getInstance(AbstractHk2InjectionManager.java:160)
    at org.glassfish.jersey.inject.hk2.ImmediateHk2InjectionManager.getInstance(ImmediateHk2InjectionManager.java:30)
    at org.glassfish.jersey.internal.inject.Injections.getOrCreate(Injections.java:105)
    at org.glassfish.jersey.server.model.MethodHandler$ClassBasedMethodHandler.getInstance(MethodHandler.java:260)
    at org.glassfish.jersey.server.internal.routing.PushMethodHandlerRouter.apply(PushMethodHandlerRouter.java:51)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:86)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:69)
    at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:38)
    at org.glassfish.jersey.process.internal.Stages.process(Stages.java:173)
    at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:245)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
    at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
    at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:232)
    at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:679)
    at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:392)
    at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:346)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:365)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:318)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:873)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1623)
    at com.kumuluz.ee.common.filters.PoweredByFilter.doFilter(PoweredByFilter.java:43)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1701)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1668)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
    at org.eclipse.jetty.server.Server.handle(Server.java:499)
    at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:370)
    at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:267)
    at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
    at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
    at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
    at java.base/java.lang.Thread.run(Thread.java:835)
    Caused by: javax.xml.bind.JAXBException: Implementation of JAXB-API has not been found on module path or classpath.
    - with linked exception:
    [java.lang.ClassNotFoundException: com.sun.xml.internal.bind.v2.ContextFactory]
    at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:177)
    at javax.xml.bind.ContextFinder.find(ContextFinder.java:364)
    at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:508)
    at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:465)
    at org.glassfish.jersey.server.wadl.internal.WadlApplicationContextImpl.<init>(WadlApplicationContextImpl.java:112)
    ... 83 more
    Caused by: java.lang.ClassNotFoundException: com.sun.xml.internal.bind.v2.ContextFactory
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    at javax.xml.bind.ServiceLoaderUtil.nullSafeLoadClass(ServiceLoaderUtil.java:122)
    at javax.xml.bind.ServiceLoaderUtil.safeLoadClass(ServiceLoaderUtil.java:155)
    at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:174)
    ... 87 more
    MultiException stack 2 of 2
    java.lang.IllegalStateException: Unable to perform operation: create on org.glassfish.jersey.server.wadl.internal.WadlApplicationContextImpl
    at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:369)
    at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463)
    at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:59)
    at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:47)
    at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture$1.call(Cache.java:74)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture.run(Cache.java:131)
    at org.glassfish.hk2.utilities.cache.Cache.compute(Cache.java:176)
    at org.jvnet.hk2.internal.SingletonContext.findOrCreate(SingletonContext.java:98)
    at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102)
    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:92)
    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:66)
    at org.glassfish.jersey.inject.hk2.ContextInjectionResolverImpl.resolve(ContextInjectionResolverImpl.java:103)
    at org.jvnet.hk2.internal.ClazzCreator.resolve(ClazzCreator.java:188)
    at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:211)
    at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:334)
    at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463)
    at org.glassfish.jersey.inject.hk2.RequestContext.findOrCreate(RequestContext.java:59)
    at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.internalGetService(ServiceLocatorImpl.java:754)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.internalGetService(ServiceLocatorImpl.java:717)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:687)
    at org.glassfish.jersey.inject.hk2.AbstractHk2InjectionManager.getInstance(AbstractHk2InjectionManager.java:160)
    at org.glassfish.jersey.inject.hk2.ImmediateHk2InjectionManager.getInstance(ImmediateHk2InjectionManager.java:30)
    at org.glassfish.jersey.internal.inject.Injections.getOrCreate(Injections.java:105)
    at org.glassfish.jersey.server.model.MethodHandler$ClassBasedMethodHandler.getInstance(MethodHandler.java:260)
    at org.glassfish.jersey.server.internal.routing.PushMethodHandlerRouter.apply(PushMethodHandlerRouter.java:51)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:86)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:69)
    at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:38)
    at org.glassfish.jersey.process.internal.Stages.process(Stages.java:173)
    at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:245)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
    at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
    at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:232)
    at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:679)
    at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:392)
    at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:346)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:365)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:318)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:873)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1623)
    at com.kumuluz.ee.common.filters.PoweredByFilter.doFilter(PoweredByFilter.java:43)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1701)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1668)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
    at org.eclipse.jetty.server.Server.handle(Server.java:499)
    at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:370)
    at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:267)
    at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
    at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
    at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
    at java.base/java.lang.Thread.run(Thread.java:835)

    WARNING: Unknown HK2 failure detected:
    MultiException stack 1 of 4
    javax.ws.rs.ProcessingException: Error creating a JAXBContext for wadl processing.
    at org.glassfish.jersey.server.wadl.internal.WadlApplicationContextImpl.<init>(WadlApplicationContextImpl.java:120)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
    at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
    at org.glassfish.hk2.utilities.reflection.ReflectionHelper.makeMe(ReflectionHelper.java:1352)
    at org.jvnet.hk2.internal.ClazzCreator.createMe(ClazzCreator.java:248)
    at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:342)
    at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463)
    at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:59)
    at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:47)
    at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture$1.call(Cache.java:74)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture.run(Cache.java:131)
    at org.glassfish.hk2.utilities.cache.Cache.compute(Cache.java:176)
    at org.jvnet.hk2.internal.SingletonContext.findOrCreate(SingletonContext.java:98)
    at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102)
    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:92)
    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:66)
    at org.glassfish.jersey.inject.hk2.ContextInjectionResolverImpl.resolve(ContextInjectionResolverImpl.java:103)
    at org.jvnet.hk2.internal.ClazzCreator.resolve(ClazzCreator.java:188)
    at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:211)
    at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:334)
    at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463)
    at org.glassfish.jersey.inject.hk2.RequestContext.findOrCreate(RequestContext.java:59)
    at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.internalGetService(ServiceLocatorImpl.java:754)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.internalGetService(ServiceLocatorImpl.java:717)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:687)
    at org.glassfish.jersey.inject.hk2.AbstractHk2InjectionManager.getInstance(AbstractHk2InjectionManager.java:160)
    at org.glassfish.jersey.inject.hk2.ImmediateHk2InjectionManager.getInstance(ImmediateHk2InjectionManager.java:30)
    at org.glassfish.jersey.internal.inject.Injections.getOrCreate(Injections.java:105)
    at org.glassfish.jersey.server.model.MethodHandler$ClassBasedMethodHandler.getInstance(MethodHandler.java:260)
    at org.glassfish.jersey.server.internal.routing.PushMethodHandlerRouter.apply(PushMethodHandlerRouter.java:51)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:86)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:69)
    at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:38)
    at org.glassfish.jersey.process.internal.Stages.process(Stages.java:173)
    at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:245)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
    at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
    at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:232)
    at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:679)
    at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:392)
    at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:346)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:365)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:318)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:873)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1623)
    at com.kumuluz.ee.common.filters.PoweredByFilter.doFilter(PoweredByFilter.java:43)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1701)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1668)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
    at org.eclipse.jetty.server.Server.handle(Server.java:499)
    at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:370)
    at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:267)
    at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
    at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
    at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
    at java.base/java.lang.Thread.run(Thread.java:835)
    Caused by: javax.xml.bind.JAXBException: Implementation of JAXB-API has not been found on module path or classpath.
    - with linked exception:
    [java.lang.ClassNotFoundException: com.sun.xml.internal.bind.v2.ContextFactory]
    at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:177)
    at javax.xml.bind.ContextFinder.find(ContextFinder.java:364)
    at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:508)
    at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:465)
    at org.glassfish.jersey.server.wadl.internal.WadlApplicationContextImpl.<init>(WadlApplicationContextImpl.java:112)
    ... 83 more
    Caused by: java.lang.ClassNotFoundException: com.sun.xml.internal.bind.v2.ContextFactory
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    at javax.xml.bind.ServiceLoaderUtil.nullSafeLoadClass(ServiceLoaderUtil.java:122)
    at javax.xml.bind.ServiceLoaderUtil.safeLoadClass(ServiceLoaderUtil.java:155)
    at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:174)
    ... 87 more
    MultiException stack 2 of 4
    java.lang.IllegalStateException: Unable to perform operation: create on org.glassfish.jersey.server.wadl.internal.WadlApplicationContextImpl
    at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:369)
    at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463)
    at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:59)
    at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:47)
    at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture$1.call(Cache.java:74)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture.run(Cache.java:131)
    at org.glassfish.hk2.utilities.cache.Cache.compute(Cache.java:176)
    at org.jvnet.hk2.internal.SingletonContext.findOrCreate(SingletonContext.java:98)
    at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102)
    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:92)
    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:66)
    at org.glassfish.jersey.inject.hk2.ContextInjectionResolverImpl.resolve(ContextInjectionResolverImpl.java:103)
    at org.jvnet.hk2.internal.ClazzCreator.resolve(ClazzCreator.java:188)
    at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:211)
    at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:334)
    at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463)
    at org.glassfish.jersey.inject.hk2.RequestContext.findOrCreate(RequestContext.java:59)
    at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.internalGetService(ServiceLocatorImpl.java:754)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.internalGetService(ServiceLocatorImpl.java:717)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:687)
    at org.glassfish.jersey.inject.hk2.AbstractHk2InjectionManager.getInstance(AbstractHk2InjectionManager.java:160)
    at org.glassfish.jersey.inject.hk2.ImmediateHk2InjectionManager.getInstance(ImmediateHk2InjectionManager.java:30)
    at org.glassfish.jersey.internal.inject.Injections.getOrCreate(Injections.java:105)
    at org.glassfish.jersey.server.model.MethodHandler$ClassBasedMethodHandler.getInstance(MethodHandler.java:260)
    at org.glassfish.jersey.server.internal.routing.PushMethodHandlerRouter.apply(PushMethodHandlerRouter.java:51)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:86)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:69)
    at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:38)
    at org.glassfish.jersey.process.internal.Stages.process(Stages.java:173)
    at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:245)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
    at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
    at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:232)
    at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:679)
    at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:392)
    at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:346)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:365)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:318)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:873)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1623)
    at com.kumuluz.ee.common.filters.PoweredByFilter.doFilter(PoweredByFilter.java:43)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1701)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1668)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
    at org.eclipse.jetty.server.Server.handle(Server.java:499)
    at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:370)
    at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:267)
    at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
    at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
    at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
    at java.base/java.lang.Thread.run(Thread.java:835)
    MultiException stack 3 of 4
    java.lang.IllegalArgumentException: While attempting to resolve the dependencies of org.glassfish.jersey.server.wadl.processor.WadlModelProcessor$OptionsHandler errors were found
    at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:224)
    at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:334)
    at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463)
    at org.glassfish.jersey.inject.hk2.RequestContext.findOrCreate(RequestContext.java:59)
    at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.internalGetService(ServiceLocatorImpl.java:754)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.internalGetService(ServiceLocatorImpl.java:717)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:687)
    at org.glassfish.jersey.inject.hk2.AbstractHk2InjectionManager.getInstance(AbstractHk2InjectionManager.java:160)
    at org.glassfish.jersey.inject.hk2.ImmediateHk2InjectionManager.getInstance(ImmediateHk2InjectionManager.java:30)
    at org.glassfish.jersey.internal.inject.Injections.getOrCreate(Injections.java:105)
    at org.glassfish.jersey.server.model.MethodHandler$ClassBasedMethodHandler.getInstance(MethodHandler.java:260)
    at org.glassfish.jersey.server.internal.routing.PushMethodHandlerRouter.apply(PushMethodHandlerRouter.java:51)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:86)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:69)
    at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:38)
    at org.glassfish.jersey.process.internal.Stages.process(Stages.java:173)
    at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:245)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
    at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
    at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:232)
    at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:679)
    at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:392)
    at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:346)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:365)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:318)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:873)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1623)
    at com.kumuluz.ee.common.filters.PoweredByFilter.doFilter(PoweredByFilter.java:43)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1701)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1668)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
    at org.eclipse.jetty.server.Server.handle(Server.java:499)
    at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:370)
    at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:267)
    at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
    at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
    at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
    at java.base/java.lang.Thread.run(Thread.java:835)
    MultiException stack 4 of 4
    java.lang.IllegalStateException: Unable to perform operation: resolve on org.glassfish.jersey.server.wadl.processor.WadlModelProcessor$OptionsHandler
    at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:363)
    at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463)
    at org.glassfish.jersey.inject.hk2.RequestContext.findOrCreate(RequestContext.java:59)
    at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.internalGetService(ServiceLocatorImpl.java:754)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.internalGetService(ServiceLocatorImpl.java:717)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:687)
    at org.glassfish.jersey.inject.hk2.AbstractHk2InjectionManager.getInstance(AbstractHk2InjectionManager.java:160)
    at org.glassfish.jersey.inject.hk2.ImmediateHk2InjectionManager.getInstance(ImmediateHk2InjectionManager.java:30)
    at org.glassfish.jersey.internal.inject.Injections.getOrCreate(Injections.java:105)
    at org.glassfish.jersey.server.model.MethodHandler$ClassBasedMethodHandler.getInstance(MethodHandler.java:260)
    at org.glassfish.jersey.server.internal.routing.PushMethodHandlerRouter.apply(PushMethodHandlerRouter.java:51)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:86)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:69)
    at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:38)
    at org.glassfish.jersey.process.internal.Stages.process(Stages.java:173)
    at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:245)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
    at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
    at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:232)
    at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:679)
    at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:392)
    at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:346)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:365)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:318)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:873)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1623)
    at com.kumuluz.ee.common.filters.PoweredByFilter.doFilter(PoweredByFilter.java:43)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1701)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1668)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
    at org.eclipse.jetty.server.Server.handle(Server.java:499)
    at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:370)
    at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:267)
    at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
    at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
    at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
    at java.base/java.lang.Thread.run(Thread.java:835)


    2019-08-31 11:21:33.057 WARNING -- org.eclipse.jetty.server.HttpChannel -- /polldles
    javax.servlet.ServletException: A MultiException has 4 exceptions. They are:
    1. javax.ws.rs.ProcessingException: Error creating a JAXBContext for wadl processing.
    2. java.lang.IllegalStateException: Unable to perform operation: create on org.glassfish.jersey.server.wadl.internal.WadlApplicationContextImpl
    3. java.lang.IllegalArgumentException: While attempting to resolve the dependencies of org.glassfish.jersey.server.wadl.processor.WadlModelProcessor$OptionsHandler errors were found
    4. java.lang.IllegalStateException: Unable to perform operation: resolve on org.glassfish.jersey.server.wadl.processor.WadlModelProcessor$OptionsHandler

    at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:408)
    at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:346)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:365)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:318)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:873)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1623)
    at com.kumuluz.ee.common.filters.PoweredByFilter.doFilter(PoweredByFilter.java:43)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1701)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1668)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
    at org.eclipse.jetty.server.Server.handle(Server.java:499)
    at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:370)
    at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:267)
    at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
    at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
    at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
    at java.base/java.lang.Thread.run(Thread.java:835)
    Caused by: A MultiException has 4 exceptions. They are:
    1. javax.ws.rs.ProcessingException: Error creating a JAXBContext for wadl processing.
    2. java.lang.IllegalStateException: Unable to perform operation: create on org.glassfish.jersey.server.wadl.internal.WadlApplicationContextImpl
    3. java.lang.IllegalArgumentException: While attempting to resolve the dependencies of org.glassfish.jersey.server.wadl.processor.WadlModelProcessor$OptionsHandler errors were found
    4. java.lang.IllegalStateException: Unable to perform operation: resolve on org.glassfish.jersey.server.wadl.processor.WadlModelProcessor$OptionsHandler

    at org.jvnet.hk2.internal.Collector.throwIfErrors(Collector.java:65)
    at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:226)
    at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:334)
    at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463)
    at org.glassfish.jersey.inject.hk2.RequestContext.findOrCreate(RequestContext.java:59)
    at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.internalGetService(ServiceLocatorImpl.java:754)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.internalGetService(ServiceLocatorImpl.java:717)
    at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:687)
    at org.glassfish.jersey.inject.hk2.AbstractHk2InjectionManager.getInstance(AbstractHk2InjectionManager.java:160)
    at org.glassfish.jersey.inject.hk2.ImmediateHk2InjectionManager.getInstance(ImmediateHk2InjectionManager.java:30)
    at org.glassfish.jersey.internal.inject.Injections.getOrCreate(Injections.java:105)
    at org.glassfish.jersey.server.model.MethodHandler$ClassBasedMethodHandler.getInstance(MethodHandler.java:260)
    at org.glassfish.jersey.server.internal.routing.PushMethodHandlerRouter.apply(PushMethodHandlerRouter.java:51)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:86)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage._apply(RoutingStage.java:89)
    at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:69)
    at org.glassfish.jersey.server.internal.routing.RoutingStage.apply(RoutingStage.java:38)
    at org.glassfish.jersey.process.internal.Stages.process(Stages.java:173)
    at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:245)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
    at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
    at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:232)
    at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:679)
    at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:392)
    ... 32 more
    Caused by: javax.ws.rs.ProcessingException: Error creating a JAXBContext for wadl processing.
    at org.glassfish.jersey.server.wadl.internal.WadlApplicationContextImpl.<init>(WadlApplicationContextImpl.java:120)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
    at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
    at org.glassfish.hk2.utilities.reflection.ReflectionHelper.makeMe(ReflectionHelper.java:1352)
    at org.jvnet.hk2.internal.ClazzCreator.createMe(ClazzCreator.java:248)
    at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:342)
    at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:463)
    at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:59)
    at org.jvnet.hk2.internal.SingletonContext$1.compute(SingletonContext.java:47)
    at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture$1.call(Cache.java:74)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at org.glassfish.hk2.utilities.cache.Cache$OriginThreadAwareFuture.run(Cache.java:131)
    at org.glassfish.hk2.utilities.cache.Cache.compute(Cache.java:176)
    at org.jvnet.hk2.internal.SingletonContext.findOrCreate(SingletonContext.java:98)
    at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2102)
    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:92)
    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:66)
    at org.glassfish.jersey.inject.hk2.ContextInjectionResolverImpl.resolve(ContextInjectionResolverImpl.java:103)
    at org.jvnet.hk2.internal.ClazzCreator.resolve(ClazzCreator.java:188)
    at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:211)
    ... 61 more
    Caused by: javax.xml.bind.JAXBException: Implementation of JAXB-API has not been found on module path or classpath.
    - with linked exception:
    [java.lang.ClassNotFoundException: com.sun.xml.internal.bind.v2.ContextFactory]
    at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:177)
    at javax.xml.bind.ContextFinder.find(ContextFinder.java:364)
    at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:508)
    at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:465)
    at org.glassfish.jersey.server.wadl.internal.WadlApplicationContextImpl.<init>(WadlApplicationContextImpl.java:112)
    ... 83 more
    Caused by: java.lang.ClassNotFoundException: com.sun.xml.internal.bind.v2.ContextFactory
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    at javax.xml.bind.ServiceLoaderUtil.nullSafeLoadClass(ServiceLoaderUtil.java:122)
    at javax.xml.bind.ServiceLoaderUtil.safeLoadClass(ServiceLoaderUtil.java:155)
    at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:174)
    ... 87 more
    et dans [errors.txt] les logs suivants :

    WARNING: An illegal reflective access operation has occurred
    WARNING: Illegal reflective access by org.jboss.weld.util.bytecode.ClassFileUtils$1 (file:/C:/Data/st-2019/dev/vue.js/Mbaron/vuejs-polldle-tutorial-src-master/polldle-backend/polldle-server/target/dependency/weld-core-impl-3.1.1.Final.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int)
    WARNING: Please consider reporting this to the maintainers of org.jboss.weld.util.bytecode.ClassFileUtils$1
    WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
    WARNING: All illegal access operations will be denied in a future release
    Serge

  14. #14
    Responsable Java

    Avatar de Mickael Baron
    Homme Profil pro
    Ingénieur de Recherche en Informatique
    Inscrit en
    juillet 2005
    Messages
    13 806
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche en Informatique
    Secteur : Service public

    Informations forums :
    Inscription : juillet 2005
    Messages : 13 806
    Points : 66 935
    Points
    66 935
    Par défaut
    Serge,

    Bingo, je te l'avais dit. C'est bien un problème avec JAXB. Le JDK 12 depuis JDK 9 n'embarque plus JAXB et implémentation (suppression de JAXWS).

    Soit tu passes par Java 8 (version officielle pour le tutoriel) ou tu trouves les dépendances nécessaires. Pour la dernière solution, j'y regarderai lundi ou ce week-end si j'ai le temps. Pas compliqué, il faut trouvé jusqu'à ce qu'il n'y ait plus d'exception de type ClassNotFoundException

    Mickael
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Ingénieur de Recherche en informatique au LIAS / ISAE-ENSMA
    Page de Developpez.com : mbaron.developpez.com
    Twitter : www.twitter.com/mickaelbaron
    Blog : mickael-baron.fr
    LinkedIn : www.linkedin.com/in/mickaelbaron
    DBLP : dblp.uni-trier.de/pers/hd/b/Baron:Micka=euml=l

  15. #15
    Expert éminent

    Profil pro
    Inscrit en
    avril 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2009
    Messages : 113
    Points : 6 271
    Points
    6 271
    Par défaut
    Citation Envoyé par Mickael Baron Voir le message
    Serge,

    Bingo, je te l'avais dit. C'est bien un problème avec JAXB. Le JDK 12 depuis JDK 9 n'embarque plus JAXB et implémentation (suppression de JAXWS).

    Soit tu passes par Java 8 (version officielle pour le tutoriel) ou tu trouves les dépendances nécessaires. Pour la dernière solution, j'y regarderai lundi ou ce week-end si j'ai le temps. Pas compliqué, il faut trouvé jusqu'à ce qu'il n'y ait plus d'exception de type ClassNotFoundException

    Mickael
    J'ai exécuté le serveur avec un JDK 8 et ça a marché. Firefox émet d'abord la commande [OPTIONS] vers le serveur pour obtenir les entêtes CORS qu'il obtient bien cette fois-ci. Il émet alors la requête [POST] demandée par le code Javascript qui se déroule également normalement.

    Merci de ton aide.

    Serge
    ==

  16. #16
    Responsable Java

    Avatar de Mickael Baron
    Homme Profil pro
    Ingénieur de Recherche en Informatique
    Inscrit en
    juillet 2005
    Messages
    13 806
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche en Informatique
    Secteur : Service public

    Informations forums :
    Inscription : juillet 2005
    Messages : 13 806
    Points : 66 935
    Points
    66 935
    Par défaut
    J'ai exécuté le serveur avec un JDK 8 et ça a marché. Firefox émet d'abord la commande [OPTIONS] vers le serveur pour obtenir les entêtes CORS qu'il obtient bien cette fois-ci. Il émet alors la requête [POST] demandée par le code Javascript qui se déroule également normalement.

    Merci de ton aide.
    Je vais planifier une mise à jour afin de supporter les dernières versions. Je passerai par un profile Maven.

    Mickael
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Ingénieur de Recherche en informatique au LIAS / ISAE-ENSMA
    Page de Developpez.com : mbaron.developpez.com
    Twitter : www.twitter.com/mickaelbaron
    Blog : mickael-baron.fr
    LinkedIn : www.linkedin.com/in/mickaelbaron
    DBLP : dblp.uni-trier.de/pers/hd/b/Baron:Micka=euml=l

Discussions similaires

  1. Réponses: 2
    Dernier message: 05/07/2019, 11h54
  2. Réponses: 2
    Dernier message: 19/06/2018, 13h30

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