У меня есть приложение, которое работает на tomcat, одним из методов является создание простого миниатюры из jpeg-изображения. Функции работают отлично в автономном режиме и неделю назад также на tomcat. Но теперь я получаю следующее сообщение об ошибке:NoClassDefFoundError при доступе к GraphicsEnvironment.getLocalGraphicsEnvironment на Tomcat
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)
Я не думаю, что у меня есть что-то изменить, что должно повлиять на это (на самом деле я не изменить функцию на всех в соответствии с репозиторием SVN), поэтому он должен быть проблемой библиотеки. Но я не могу понять, чего не хватает. Вот фактические строки из функции getThumbnail, где встречается, ошибка:
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);
[править] Я решил обновить описание проблемы немного. Да, похоже, что он не может найти какой-то класс из java.awt или связанный с ним. Но они существуют на сервере в jvm. Режим головок в Java не решает проблему. В другом проекте точно такой же код, но внутри web-сервиса axis2 на этом сервере работает нормально. [/ edit]
У вас нет класса. – user105033
Работает ли он в безголовом режиме? –
В стеке должно быть указано имя отсутствующего класса - не так ли? –