Ich habe eine Bean-Schnittstelle, AbstractBean (implementiert Bean) und SpecificBean (erweitert AbstractBean). Ich möchte SpecificBean mit folgendem Code-Snippet einfügen:
%Vor%Wenn ich versuche, dies auf glassfish zu implementieren, sehe ich den nächsten Fehler:
Ein Fehler ist aufgetreten Während der Bereitstellung ist ein Fehler aufgetreten: Ausnahme beim Laden der App: CDI-Bereitstellungsfehler: WELD-001408 Unzufriedene Abhängigkeiten für den Typ [IterableProvider & gt;] mit Qualifizierern [@Default] am Injektionspunkt [[BackedAnnotatedParameter] Parameter 2 von [ BackedAnnotatedConstructor] @Inject org.glassfish.jersey.internal.inject.JerseyClassAnalyzer (@Named ClassAnalyzer, IterableProvider & gt;)].
Wenn Sie alle Annotationen löschen (erwartete @Path), wird die Anwendung ohne Fehler implementiert.
Trikot wurde aus der Abhängigkeitenliste in maven pom.xml entfernt (Jersey enthält bereits in glassfish 4) und es wird jetzt ok ausgeführt.
Ich habe diese Frage mit ähnlichem Problem gefunden und möchte nur meine "2 Cent" hinzufügen. In meinem Fall benutzte ich Jersey 2.0 mit Jackson, um JSON von meinen Ruhe-Interfaces in Objekte und Objekte in JSON zu verwandeln. Das bedeutet, dass ich JacksonFeature
auf ResourceConfig
wie folgt registrieren musste:
Ich habe auch Moxy auf meiner Anwendungserweiterung deaktiviert:
%Vor% Beide Klassen oben verlangten von mir, Jersey als provided
in meinem pom.xml
zu behalten, um die WAR-Datei korrekt zu generieren:
Tags und Links java java-ee dependency-injection ejb