Jersey java.lang.ClassNotFoundException: com.sun.jersey.spi.container.servlet.ServletContainer

7

Ich versuche mit Tomcat und Eclipse einen Web-Service zu erstellen, indem ich eine Jersey-Bibliothek verwende. Dies ist meine Serviceklasse:

%Vor%

Und das ist Datei web.xml

%Vor%

Wenn ich meinen Dienst teste, bekomme ich java.lang.ClassNotFoundException: com.sun.jersey.spi.container.servlet.ServletContainer Ich habe Jersey von Ссылка heruntergeladen

Kann mir jemand helfen? Danke

    
user2607498 22.07.2013, 16:05
quelle

10 Antworten

12

Für mich bestand das Problem darin, dass der Server keine Ordner im lib-Ordner hatte. Stellen Sie sicher, dass auf alle Abhängigkeiten zugegriffen werden kann: Projekt - & gt; Eigenschaften - & gt; Entwicklungsbaugruppe - & gt; hinzufügen - & gt; Java Build Pfad Einträge.

    
Eran 20.10.2013 08:30
quelle
9

Ich hatte dasselbe Problem. Wir müssen nur den Build-Pfad zu Eclipse bereitstellen. Das würde funktionieren.

Stellen Sie sicher, dass es Zugriff auf alle Abhängigkeiten in: project - & gt; Eigenschaften - & gt; Entwicklungsbaugruppe - & gt; hinzufügen - & gt; Java-Build-Pfad-Einträge - & gt; maven Abhängigkeit

Ich habe gerade eine Jersey-Bundle-Abhängigkeit verwendet

"Abhängigkeit

%Vor%

Abhängigkeit "

Wenn Sie maven verwenden, funktionieren die besten paar einfachen Schritte Ihre Anwendung

    
Swarit Agarwal 03.03.2015 06:03
quelle
7

Mann, ich hatte das gleiche Problem. Ich löse ID und füge das jersey-servlet-1.18.jar zur WEB-INF / lib hinzu. Dann sah dieser Ordner so:


Denken Sie daran, fügen Sie alle diese Gläser zu Ihrem Build-Pfad

    
Natan Lotério 15.02.2014 17:17
quelle
6

Verwenden Sie Jersey 2.x? Wenn dies der Fall ist, wurde die Klasse ServletContainer in ein anderes Paket verschoben. Dieser Artikel enthält einige gute Informationen dazu, wie Sie Ihre web.xml bei der Migration von Jersey 1.7 auf 2.x ändern können: Ссылка .

    
bickster 17.09.2013 19:03
quelle
4

Die com.sun.jersey.spi.container.servlet.ServletContainer -Klasse ist in der "jersey-servlet.jar" enthalten, also sollten Sie sie zusammen mit der "jersey-server.jar" in WEB-INF / lib einfügen.

    
Ján Halaša 08.08.2013 12:59
quelle
1

Ich habe den gleichen Fehler - "java.lang.ClassNotFoundException: com.sun.jersey.spi.container.servlet.ServletContainer", bei dem Versuch, erholsamen Jersey Web-Service in tomcat von Eclipse auszuführen.

Die folgenden Schritte haben mir geholfen, das Problem zu lösen:

  • die Maven Abhängigkeit richtige Version von abhängigen Gläser korrigieren

    %Vor%
  • Klicken Sie mit der rechten Maustaste auf das Eclipse-Projekt - & gt; Maven - & gt; Aktualisieren Sie das Projekt

  • Stellen Sie sicher, in Eclipse Eigenschaften Entwicklung Montage korrekt konfiguriert ist. Rechtsklick auf Projekt - Eigenschaften - & gt; Entwicklungsbaugruppe - & gt; Hinzufügen - & gt; Java-Build-Pfad-Einträge - & gt; maven Abhängigkeit

Indu 02.02.2016 18:59
quelle
0

Wenn Sie die JERSEY-jaxrs-ri-2.9-Version zip verwenden, verwenden Sie die unten angegebene Datei WEB.XML.

%Vor%     
raj 12.06.2014 10:39
quelle
0

Ich habe diesen Fehler in einem Eclipse-Projekt erhalten, das zuvor auf Tomcat 7.0 funktioniert hat. Schließlich löste ich es, indem ich das Projekt von Tomcat entfernte und es wieder hinzufügte.

    
ygesher 18.10.2017 16:14
quelle
0

Die oben angegebenen Lösungen sind korrekt, aber selbst nachdem ich diese Änderungen vorgenommen habe, erhielt ich diesen Fehler. Also, was ich getan habe, wurde entfernt alle maven heruntergeladenen Jersey Gläser und Update Project wieder mit neuen maven Abhängigkeit und das löste mein Problem

    
Rogger296 07.12.2017 09:31
quelle
-1

Wir bekommen diesen Fehler wegen Build-Pfadproblemen und veralteten Abhängigkeitsnamen.Nach dem Start von org.glassfish und nicht von com.sun.Nach dem Ersetzen durch die neuesten Abhängigkeiten für 2.0 sollten Sie "Server" hinzufügen Laufzeitbibliotheken in Build Path.

"java.lang.ClassNotFoundException: com.sun.jersey.spi.container.servlet.ServletContainer"

Bitte befolgen Sie die folgenden Schritte, um die Ausnahme "class not found" zu beheben.

Rechtsklick auf Projekt - & gt; Buildpfad - & gt; Buildpfad - & gt; Bibliothek hinzufügen - & gt; Serverlaufzeit - & gt; Apache Tomcat v7.0

Danke, Sachin GN

    
Sachin G N 07.08.2015 22:45
quelle

Tags und Links