Swagger-core: Bug : Impossible d'accéder à YAML : java.lang.NoSuchMethodError

Créé le 13 févr. 2018  ·  4Commentaires  ·  Source: swagger-api/swagger-core

J'essaie d'utiliser swagger-core pour mon API JAX RS, mais lorsque j'essaie d'accéder au fichier openapi.yaml (dans mon cas http://localhost:8080/api/openapi.yaml), j'obtiens l'erreur suivante :
java.lang.NoSuchMethodError: com.google.common.collect.Sets$SetView.iterator()Lcom/google/common/collect/UnmodifiableIterator;
L'API elle-même fonctionne comme prévu. Est-ce que j'ai raté quelque chose ou est-ce un bug ?

La technologie
JEE 8
Poisson verre 5
JAX-RS 2.26
Swagger-jaxrs2 2.0.0-rc4

Trace de la pile
stacktrace.txt
POM.xml
pom.txt
web.xml
web.txt

Commentaire le plus utile

Bizarre. Il semble que j'ai oublié d'ajouter le code XML ou il a été supprimé ?
Le XML Glassfish doit contenir cette option :
<glassfish-web-app> <class-loader delegate="false"/> </glassfish-web-app>

Tous les 4 commentaires

J'ai enfin trouvé la solution.
Glassfish a sa propre version Goyave qui n'est pas compatible avec Swagger.

Réparer:
Créer un glassfish-web.xml
Et ajoutez <class-loader delegate="false"/>

@denny99 ajouter quoi? Vu ce problème aussi...

Bizarre. Il semble que j'ai oublié d'ajouter le code XML ou il a été supprimé ?
Le XML Glassfish doit contenir cette option :
<glassfish-web-app> <class-loader delegate="false"/> </glassfish-web-app>

J'utilise des bottes de printemps avec du jersey.
J'ai eu la même erreur avec la dernière version de goyave.
Je pouvais voir que l'ancienne version n'était clairement pas ajoutée au chemin de classe.
J'ai donc essayé plusieurs versions de goyave. Et la version qui fonctionnait était com.google.guava:guava:24.1-jre ( <= 24.1-jre ).

Cette page vous a été utile?
0 / 5 - 0 notes