5 Stimmen

NoClassDefFoundError beim Zugriff auf GraphicsEnvironment.getLocalGraphicsEnvironment unter Tomcat

Ich habe eine Anwendung, die auf Tomcat läuft, eine der Methoden ist, ein einfaches Thumbnail aus einem jpeg-Bild zu erstellen. Die Funktionen funktionieren offline gut und vor einer Woche auch auf dem Tomcat. Aber jetzt bekomme ich den folgenden Fehler:

java.lang.NoClassDefFoundError
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Class.java:164)
java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:68)
java.awt.image.BufferedImage.createGraphics(BufferedImage.java:1141)
eval.impl.ImageEval.getThumbnail(ImageEval.java:155)
eval.impl.ImageServlet.doGet(ImageServlet.java:79)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

Ich glaube nicht, dass ich irgendetwas geändert habe, was dies beeinflussen sollte (eigentlich habe ich die Funktion laut dem svn-Repository überhaupt nicht geändert), also muss es ein Bibliotheksproblem sein. Aber ich kann nicht herausfinden, was fehlt. Hier sind die tatsächlichen Zeilen aus der getThumbnail-Funktion, wo der Fehler auftritt:

        BufferedImage thumbImage = new BufferedImage(thumbWidth, 
            thumbHeight, BufferedImage.TYPE_INT_RGB);
    Graphics2D graphics2D = thumbImage.createGraphics();
    graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
            RenderingHints.VALUE_INTERPOLATION_BILINEAR);
    graphics2D.drawImage(simage, 0, 0, thumbWidth, thumbHeight, null);

[edit] Ich habe beschlossen, die Problembeschreibung ein wenig zu aktualisieren. Ja, es scheint, dass er eine Klasse aus java.awt oder eine damit verwandte nicht finden kann. Aber sie sind auf dem Server in der jvm vorhanden. Der Java Headless Mode löst das Problem nicht. In einem anderen Projekt funktioniert der exakt gleiche Code, aber innerhalb eines axis2 Webservice auf diesem Server, einwandfrei. [/edit]

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X